I wrote a program to completely remove the FAT partition table
entry from the GPT, which meant learning about CRC-32 and messing up
with the dd command, which was... fun. All this effort didn't pan out however.
Ultimately, I ended up installing Leopard to an external drive,
migrating my backup into the new install, then formatting my internal
drive before using SuperDuper! to copy the new Leopard install to the
internal drive. After I had been running Leopard off of the external
drive for a while, a box popped up that told me that my internal drive
was now available for use in a limited capacity. Turns out Leopard
had been silently running fsck_hfs on the file system, and that it
turned up errors in the drive. That's probably the reason I couldn't
get the Leopard installer to recognize the drive. I just wasn't
patient enough. If I had waited for the installer to finish the fsck,
it probably would have shown up.
The error fsck_hfs found was "Incorrect number of thread records
found." Apparently this is not something that can be fixed in HFS+
file systems. Or at least, the built in tools can't fix it.