I'm running a recent (last couple of days) version of emacs 24 from bzr.
I'll update and try again. Sems odd it will work for you but not me when
we are running similar versions, but a windows build v linux 64bit build.
I'll also try with latest emacs 23 and see if I get the same
issue.
It would be good if someone else can try on Linux (especially 64bit) and
it would be interesting to know if it works with a build using the old X11
libs rather than gtk, just to rule that out as the difference.
If nobody can see a problem with the code I'm using, I'm suspecting it is
either a bug or an undocumented feature (i.e. cannot have menu acitons at the
top level, only sub-menus since the same code appears to work fine if it is in
a sub-menu).