You said it. I deal with proprietary equipment as well and some hardware vendors do only provide a VB interface to their equipment beyond a canned test/sample app. I generally need to just parse data from a 400 and send data down to a controller. In the process I send and read I/O to PLCs which handle motion controls. VB does this sort of this very easily and efficiently. I have applications that run constantly in a production environment without issue.
All that said, if I can do something in C++, VB.net or C# and the result is better, I'll code it in that. For simple little front-end apps VB6 works just fine if all you need to do is drop in an ActiveX object and send it some data.
As others have stated, the VB.net migration tool for VB6 code is pathetic. It's easier and cleaner in my opinion to just rebuild it in VB.net if there's a need.
I'm kicking around with moving everything over to pure Java, but as always, it's a function of time. Linux with Java front end applets controlling equipment could be the ticket.