I'm having this same problem (sort of).
Try changing your code to this:
DoCmd.OpenReport stDocName, acViewNormal
From what I've read from other threads "Access actually processes the Report again (it does not use the Preview display)".
If you use the code above it will print properly (I...