I have hopefully stumbled upon the reason IE hijacks the honor of being the default web browser at seemingly random times.
To see the potential cause of this, control-click on the Internet Explorer application and choose "Show Package Contents". Open the Contents folder and then open Info-macos.plist in your editor of choice. Near the bottom you'll see this key:
<key>CFBundleURLTypes</key>Within that key is an array of values in the following form:
<key>CFBundleURLName</key>The final association is what we are worried about; LS is OS X's Launch Services which handles all the file typing and associations for the OS. Deleting these lines should prevent IE from hijacking your browser setting.
<string>http URL</string>
<key>CFBundleURLSchemes</key>
<array>
<string>http</string>
</array>
<key>LSIsAppleDefaultForScheme</key>
<true/>
Mac OS X Hints
http://hints.macworld.com/article.php?story=20020708091959304