This reply may be too late to help David DeWitt, but here is an answer that may help the next person...

Help with printing unable to advanced to next page - using PrintDocument--------------------------------------------------------------------------------

1) In David's code he has 1/2 the answer that everyone has been looking for. He calls RemoveHandler() to remove the handler when he was done drawing.
AddHandler
...