It seems mIRC is failing to add addresses for Queries to the IAL when the person you are talking to is not on any common channel
..and "/help IAL" explains why.
I think mIRC should hold addresses of people not on the same channels, or at least allow addresses to be accessed in events.
It does both. $fulladdress, $address (no parameters!), $site etc all work in events regardless of the IAL, and there's also $query().addr (but see the warning about it in the helpfile).