Sulla tempistica il browser IE interpreta a modo suo.

Comunque il tuo script non puo` funzionare.
Se la finestra e` (ancora) aperta, chiaramente ti dice che esiste; se la finestra e` chiusa lo script non esiste piu`.

Il test lo potresti fare in una popup, testando se esiste window.opener , solo che le popup sono brutte bestie, e molti utenti non le permettono.



Nota che all'evento onunload hai solo un'istruzione a
disposizione: per la successiva non esiste piu` la finestra.

Quindi l'unica sintassi permessa e`:

window.onunload = function{window.open(....);};
o l'equivalente:
<body onunload="window.open(...);">