So least privileged doesn't allow the client to print?
Why do you need to change the client's default printer? Is there a special printer or paper your app requires?
Perhaps doing a SaveAs to the users temp folder (check the TEMP environment variable) and printing from there will work. I'm guessing everyone has access to their own temp folder.
hth,
Mark