Some of this may be guesses. As I said, sometimes it worked, but most of the time it has not. I have I have tethered and un-tethered 5 times and it has worked every time. New record :-)
Here is what I have learned so far...
I figured the drivers had to be good or else I could not see the "MTP" and when clicking tethering, I would not have seen "connected/firewalled" on my laptop.
Again, my OS is XP, not sure if newer OS would have shown different results.
My clue was the "hardware error". When I thought to myself, sound like a NIC not connected, the light bulb went off or should I say when on :-). I had my wireless radio turned off and my wire NIC un-plugged. Even if they were showing "disconnected" could the OS have been still trying to use them? Next I disabled them and boom, tethering started working (could now ping google.com).
Although this is not part of my questions, I will include it for reference.
Then I tried to VPN (Cisco client though VPN concentrate). I could connect and get a secure connecting, but when pinging a IP that is on the internal network it would not work. Both Wire and Wireless had a internal address, I changed them to DHCP and the VPN worked. Who would have thought that a disabled interface would still win.
Anyway so much, I am getting ready to test in the field, if I learn anything else of value, I will post it.
Thanks all for your help.