I see that John M. has released a version of Spreadsheet::WriteExcel that supports Excel 97 format. I suppose I should port that to Ruby, since I already ported version 0.26 (I never did get around to adding Formula support).
I got a "bug" report about my version because the bg_color and fg_color attributes don't act as expected. Reading over the CHANGES file I realized that John changed the behavior of these two attributes to DWIM as of version 0.39 because the old behavior was very unintuitive.