Yes, that is where I was going wrong.
I just added all three CSIDL locations whilst trying to see which one might work. After I fixed my IF test error, I ended up using the %_CSIDL_DESKTOP%. This seems to work fine.BTW, I would suggest to use the Shortcut Visualizer to add the above shortcuts. And it's not a good idea to mix per-user and per-machine shortcuts (you are doing this in your code snippet).
Thanks
John Griffiths