Made the retry a little smarter when MediaFactory.GetService fails.

Fixes #2620.
Isn't this the wrong `_session` when this called from MediaPlayer and not VideoPlayer?

I think you need to pass the `MediaSession` object into this static method instead.