You also need
ScrubbingEnabled="True"
Then set an event on Load
Loaded="Video1_Loaded"
In the Video1_Load method add the following:
Video1.Play();
Video1.Pause();
None of the video content is rendered before the play method is called. So even if you set the position past the first frame you wont get any data rendered.
I think the MediaElement.ScrubbingEnabled Property is the key.
Gets or sets a value that indicates
whether the MediaElement will update
frames for seek operations while
paused. This is a dependency property.
I tried the same approach without ScrubbingEnabled but found that the first frame wouldn't render. Not sure if it's just the hardware I am using for this. The other item to rember is that the way the MediaElement works, once you call Play() you may not actually Pause() on the first frame exactly, so you may want to reduce the volume on the stream before calling Play and reset after calling Pause.