In Windows XP, when the system theme is changes, persistens menus (i.e. submenus of the main application menu) do not honor the change.
To demonstrate just select and apply some system theme having considerably darker or lighter colors than those of the currently active theme -- the background color of persistent pull-down menus will remain that of the old theme.
Pat Thoyts proposed that this can be caused by WM_SYSCOLORCHANGE message not being propagated to menus.
It seems quite a lot about how menus get drawn is being cached for windows menu entries. This includes the font and the background color. A related issue is that windows menus do not track TkMenuFont changes although this font is updated when the system theme is changed.
The menubar does get the font change, and the border of the menu bar picks up the color change. But nothing else.
Unfortunately the menu code is pretty complex but it looks like the cached background gc needs to be invalidated and the font should be remembering the named font name and not {Tahoma 9}.