I fully agree having something with girder would allow more flex. Girder specialises in IO for computer automation and you can do everything with it, even control it via internet or whatever you can think of.
What is your plan on the controls, just out of curiosity?
If you need any kind of help from the girder guys, I've been in there for a long time and have a few connections I could share with you.
basically for the output side all you would need is to send info to a girder plugin that I believe can be done in VB... can you build DLLs in VB?