Hi Ian,
Here's a scenario. I open up DI and I hear a song I really like. I right-click on the playlist entry and say "Write to disk", and...
Well, it stops playing, and for 3 out of 5 entries it crosses the entry with a red line. For the fourth one, it gives me a file save dialog, and then when I press Okay, it rebuffers it, but the song is already over.
My suggestion is that XMPlay (a) checks if you're saving the stream that is presently being played, and (b) starts buffering it when you indicate that you wish to save it, but throws away the data until you press the "Okay" button.
How's that sound?
~Olego~