Restoring Fido and Rogers iPhone Tethering on iPhoneOS 3.1 or 3.12
If you are like me, you HAD to have iPhone tethering even though it wasn't supported yet. So, you poked around on the web and found/hacked a profile config file for Fido/Rogers and installed it. Well, as of iPhoneOS 3.1, the iPhone will not accept unsigned config files (unless you have jailbroken); as such, this file will no longer work. This means that if you have the unsigned config file, your tethering option will disappear.
However, seeing as Rogers/Fido has officially embraced tethering (for now). If you have the hacked and unsigned config file installed it (or any similar file for other carriers, like AT&T, T-Mobile, etc.) and upgraded to iPhoneOS 3.1 or 3.1.2, you will need to remove it.
Open Settings > General > Profiles (at the bottom). Remove the profile you see there. Tethering should now show up for you.
Enjoy! The credit for this goes to http://cdslash.net/about/ who helped me work out the whole config file thing in the first place...