...so then I tried restarting it and doing the "missing" without doing the other stuff first; no dice. Then I tried assembling the array calling other disks "missing" and it still doesn't like "device 3" regardless of the order I type it in.

When I tried to build it from F, G, H and E (in that order) it said "device 3 has wrong state but /hdh1 seems ok" as usual; next:
Okay, it's possible that the disk it is complaining about is okay, it's just that some of the superblocks in the array are out of date. Normally I try to avoid "--force" options, but in this case we've tried everything else, and there's a chance that if you tell mdadm to ignore the out-of-sync superblock it might just re-create the array. So, reboot just so that Knoppix is in a fresh state and follow my original instructions, except when you run mdadm this time, add --force to it:

Code:
$ sudo mdadm --assemble --force --auto=yes /dev/md0 /dev/hde1 /dev/hdf1 /dev/hdg1 /dev/hdh1
As always, try that and come back with your results.