Unlike ethernet, which is pretty much standard from platform to platform and basically trivial to support, USB code is completely different between linux, OS X, and Windows, and is a mess, API-wise.
I write software defined radio stuff, and after one incredible nightmare getting a USB SDR to work on all three platforms using conditional compilation (I did succeed), I swore off. No more. If it doesn't have an ethernet interface, or a USB-to-ethernet server app compatible with the standard SDR protocols that makes it appear to me as an ethernet SDR, it's not happening.
Luckily, some of the best SDR manufacturers out there have done it right. Andrus, AFDRI, and RFSPACE. And there are some servers that have been built to hide the abortion of USB, but so far they are very much platform-specific, for the very reason I described above.