For some reason NotifyIcon.New1 needs a Control name as a parameter, I don't know why because it doesn't use it internally , that's why it works in the IDE without it but the fussy optimising compiler complains.
ni.New1("Form1") ' New Notifyicon
Have you checked out my ControlsExDesktop library. It has a somewhat more powerful version of NotifyIcon with the ability for the application to define the icon and a context menu. It's got lots of other desktop stuff as well.