As you mentioned, mIRC has absolutely no way of knowing what modes match with what names besides those which are particularly common (ie. voice and op). The only dynamic way is to use /notice [color:red]<prefixes-here>#channel[/color].
The same goes for is[color:red]<mode-name>[/color] operators. Instead of trying (and no doubt often failing) to correctly match any and every mode prefix on a server to a mode name, it makes far more sense to just use $nick() which can accept mode prefixes to check if someone has a given mode.