Brian, I got things working better in Wine. I had to ditch my 64-bit wine and go with straight 32-bit, and installed the official dotnet45 runtime. I had to do a registry tweak to get my pass-through serial ports to enumerate in windows, but they do now. Unfortunately, my fake serial device doesn't work (Wine/win32 says it's not a valid serial port) with AgOpenGPS, though I can get it to work with other software like putty... But the real serial port works. I'll try it on my laptop in a tractor when I get a chance.
I'm not sure if this is quite what I think it is, but there's a C# library and some software for Arduino to control the Arduino from inside of C#via the serial link. Arduino Playground - Csharp