Si tu mets un bitmap coloré, comme le fait encore, je crois, WinZip, dans un menu standard, sans faire le dessin toi-même, le bitmap doit faire 13x13 pixels (mais ça a peut-être été porté à 16x16 dernièrement, justement), et il est dessiné en couleurs inversées lorsque tu surlignes l'élément de menu… Puisque la fonctionnalité a été prévue pour afficher des images N&B à la base. :/
(D'ailleurs j'avais mis des années à trouver comment faire ça sous VB6 à l'époque…

Même si on voit des icônes jusqu'à dans certains menus du systèmes dernièrement, je demande à voir l'API (qui ne soit pas SetMenuItemBitmaps)…
La plupart du temps, c'est probablement juste l'application qui se charge de dessiner l'élément de menu, comme on a toujours pu le faire (MF_OWNERDRAW), comme c'était le cas avec les Windows Forms 1.0 (en 2.0 on utilise plus les menu standard de Windows… :])