teoricamente è corretto in Flash MX perchè se scrivi:
_root.myclip_mc.onLoad = function (){

significa che il movieclip myclip_mc è già stato caricato e quindi anche il suo onLoad è già stato attivato.
in flash 7 è stato introdotto oltre all'onLoad anche onDraw, che viene prima in fatto di tempo rispetto all'onLoad, probabilmente è per questo che cambia (andrebbe guardato il bytecode generato)

cmq in linea di massima l'evento onLoad dei movieclip generato da codice:

_root.myclip_mc.onLoad = function (){
this.fai qualcosa
}

è la stessa cosa che scrivere:
_root.myclip_mc.faiqualcosa


ma praticamente è corretto invece che si possa scrivere l'onLoad da codice proprio perchè gli eventi dei movieclip vengono letti e interpretati solo dopo che tutte le azioni della timeline in cui si trova sono stati eseguiti. e quindi l'onLoad viene cmq eseguito solo in un secondo momento rispetto allo script in timeline