If I remember correctly, setdefaultprinter uses the actual printer name, and not the share name. If they are not named the same as the share, that could be an issue. Just a thought.