Dynamic "My Account" text in navigation menu
Drupal caches menu items, so if you're using hook_menu_alter you'll need to clear the menu cache to make your changes apparent.  For your requirements, hook_menu_alter is no good anyway, as the menu has become dynamic!

My suggestion would be to use Menu Per Role.  Create one menu that has each of your required menu titles in as seperate menu items (ie one menu containing three menu items; one for each type of account) and then restrict the visibility of those menu items to users with particular roles.

eg


My Account Links

My Account - only visible to standard users
My Guest Account - only visible to guest account holders
My Premium account - only visible to premium account holders



When set up correctly, this will only display one link per user (although when logged in as user 1 you will see all links).