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(...);">