On your shortcut Icon what method is it pointing to? if you have multiple sub's in a program it could be pointing to the wrong one.
I would suggest you go to the next level => add-in and vb.net or C#
After a little digging I found my answer.
I just needed to move the Main() sub to the end of the program.
Yeah, the way it decides which sub to start on pretty much sucks. I don't know why it doesn't start with the first one instead of the last one. I have started using optional dummy arguments to keep the macro from starting in the wrong spot:
Sub DontStartHere(Optional DummyArgument as Boolean)
'all the code
That way if I come back later and add more stuff I don't have to be careful where I put it.