I think the problem is that MediaExperience object and the Transport Object both change when the content changes (e.g. switch from music to tv, or from one tv recording to another), so you'd need to re-subscribe to the event when the object is changed.
Try adding a PropertyChanged to MediaCenterEnvironment and see what you get from that - if you get a PropertyChanged event with "MediaExperience" as the property, re-attach to the new MediaExperience.
Cheers,
Andrew