jQuery('#my_select').val('B') ne met pas à jour l'affichage du fake select qui reste à la valeur précédente.
jQuery('#my_select').val() rapporte la valeur correcte ('B')
Une solution est de faire jQuery('#my_select').val('B').change()
Ça fonctionne (et ça génère en même temps une erreur sous firefox "TypeError: e.handler.apply is not a function").
http://jsfiddle.net/Mk3Dn/