ぜんぜん詳しくないんだけど、ヘルプ読む限りではは、Startメソッドだと必ずバッファリングがおきる、
バッファリングを起こさないためにはResumeメソッドを呼べ、って書いてるけど、これじゃだめなのかな?
(再生速度は変更できない、とか?)

Any call to Start while paused is treated as a seek through the file, and incurs a buffering penalty from
network files. This is true even for calls to Start with the WM_START_CURRENTPOSITION value.
To continue playing from the current paused position with no buffering penalty, call Resume.