Well, your statement...
quote:
[sic] The 3rd drive is a 'personal' drive that only the person who logs in can see. In the past the script had used H: \\server location\@userid and the drive would map based on the person who logged in.
...would indicate that the share is hidden. The fully-qualified UNC would be...

\\server location\@userid$

...for a typical implementation of a hidden share. Thus, the need to double up the "$" character when mapping.
code:
Use H: '\\server location\'+@userid+'$$'