I recall they all used to be boxes to me a long time ago, and one time half of them became invisible.
I've eventually decided for myself simply not to use them in scripts anymore, and instead use the $chr codes inside my code, which makes it a lot easier to see when displaying to other users.
2 = bold, 3 = color, 15 = plain, 22 = reverse, 29 = italic, 31 = underline.
It would be nice for mIRC to display a different character than what the ctrl code character appears like in unicode so that it would be visible. That would require some extra behind-the-scenes work for mIRC, but would be beneficial. In the meantime, just use the codes and they'll work normally even if you can't see them.
Not sure if that would be a smart thing to do. What if others would be using those unicode characters? Perhaps having constant identifiers such as $b, $c, $i, $p, $r and $u could help?