OS X comes with the Speakable Commands thing, which does work.
For more general speech to text, you could try IBM ViaVoice. You would have to try it with a current copy of Office to see what happens; The last I checked, Microsoft were still using obsolescent input methods, so you might have to settle for IBM's bundled word processor.