xcopy will create the directory structure for you. Trick is to use the /I option and throw an asterisk at the end of the file name so xcopy thinks you're copying multiple files, otherwise it asks you if the target name is the file name you want, or the directory name you want. For example.
xcopy /I c:\<SourceDir>\<SourceFile> c:\<TargetDirThatDoesNOTExist>
I'd also look at RoboCopy, but you need to get it from the resource kit as it's not in Windows until Vista.