This is happening because mirc strips control codes when checking each word under the mouse pointer. This is most probably intentional, so that words containing control codes still trigger the on HOTLINK event. However, this prevents you from doing exactly what you wanted.
I guess mirc could first check the unstripped wildcard against the unstripped word in the text and if that fails, strip the codes from both and try again. But, for the sake of consistency, it would be better if on HOTLINK behaved like the on TEXT event, ie not stripping control codes at all.