It seems that mIRC is updating the value of $me before it executes the on NICK event.

Code:
on *:NICK:{
  echo -a Me: $me 
  echo -a Nick: $nick 
  echo -a NewNick: $newnick
  echo -a Raw: $rawmsg
}



Code:
Me: [color:green]NickA[/color]
Nick: [color:blue]NickB[/color]
NewNick: [color:green]NickA[/color]
Raw: :[color:blue]NickB[/color]!ident@host.com NICK :NickA


I'm guessing that the "me:" prefix is essentially this code:

if ($me == $nick) ;execute event

But since $me has already been updated to the value of $newnick, it no longer matches $nick (obviously).

-genius_at_work