i´m not using VS but just out of curiosity, do you get the same error if you call the sub like this ?
Main Sub Main() MsgBox "Hello World!" End Sub
i´m unshure but if i remember correctly a call statement tries to create a return value even if there are no arguments. @dale can you answer this ?
And do you get an error at all if you completely leave out the call to Main above but call your routine by using this from a toolbar button once the plugin is loaded in Rhino:
! -_RunScript ( Main )