This issue is unusual in that a number of conditions must all be true in order to create a circumstance where the shortcut is set by the script and it functions properly but the icon does not resolve.
The conditions are as follows: When creating a new shortcut where a browser executable is being specified for the target of the shortcut, and the target executable is not set as the default browser for the user, and the path to the icon file is using a network location (as opposed to a location local to the user session), and the operating system of the machine is Server 2012 R2, the specified icon will not resolve and will use a default icon instead.
When creating the shortcut manually, the default browser is used and therefore this would not be a problem. Due to the fact that the script can specify any browser, even if it is not the default, this problem can be encountered when automating the placement of the shortcut.