Вот код, на котором проверял работоспособность. Ошибка эта у меня не возникает. Разница только в том, что я trace заменил на Alert.show для удобства
Основное приложение:

Код AS3:
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication creationComplete="init(event)" applicationComplete="listeners(event)" xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="300" height="200">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
private function init(event:Event):void
{
btnNewWindow.addEventListener(MouseEvent.CLICK, onClick);
}
private function listeners(event:Event):void
{
taText.addEventListener(NewWindow.CUSTOM, onCustom);
}
private function onCustom(event:Event):void
{
Alert.show("CATCHED");
}
private function onClick(event:MouseEvent):void
{
var newWindow:NewWindow = new NewWindow();
newWindow.open();
newWindow.addEventListener(NewWindow.CUSTOM, onCustom);
}
]]>
</mx:Script>
<mx:Button x="10" y="10" label="New window" id="btnNewWindow"/>
<mx:TextArea x="10" y="40" width="220" height="111" id="taText"/>
</mx:WindowedApplication>
NewWindow.mxml

Код AS3:
<?xml version="1.0" encoding="utf-8"?>
<mx:Window xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="400" height="300" creationComplete="init(event)">
<mx:Script>
<![CDATA[
public static const CUSTOM:String = 'custom';
private function init(event:Event):void
{
btnEvent.addEventListener(MouseEvent.CLICK, onClick);
}
private function onClick(event:MouseEvent):void
{
dispatchEvent (new Event(CUSTOM,true));
}
]]>
</mx:Script>
<mx:Button x="95" y="106" label="Button" id="btnEvent"/>
</mx:Window>