Based on the comment by Catherine I decided to run some more tests on the Canon ISO data that I was extracting from the EXIF Makernotes. I confirmed that the script worked correctly for my S400 (and I assume other similar models).
Unfortunately, I discovered that it did not work correctly for files from my Rebel XT. The Rebel XT writes the ISO data to the “standard” location in the EXIF header.
I have updated the scripts to use the “ISOSpeedRatings” field if it is set and fallback on the makernotes if not. This seems to work correctly for photos from both of my cameras (here and here). This has not been tested with any other cameras.
Here is the zip with the changes
Here is the original Tutorial