I have never written any code that looks for a driver itself, but you can certainly look for file names.
In VB.net, using Try / Catch coding in all the proper spots will catch any errors ahead of time.
There is a process running all the time on my X10 pc called x10nets.exe
You can test to see if that service is running in VB.net
If that service is running, then x10 must be installed and working. (assumption on my part)
I would just do some testing using a simple x10 program to test your code on a pc that does not have x10 installed
This will flush out all the possible problems your users may encounter.
I like real world testing