"I've run a seagate diagnostic tool on it, and it found some bad sectors..."
Seagate (and every other drive manufacturer) puts some extra blocks at the end of the disk. When you run the low level Seagate utility, one of the options is to redirect bad block to the extra blocks at the end. Did you select this option when you ran the Seagate diagnostic program? Maybe it is the default. If the Seagate diagnostic program redirected the addresses of the bad blocks to the extra blocks then 'mkfs.ext3 -c -c /dev/hdb1' will find a hardware error free disk.
"I know which sectors are bad (seagate tools told me) so is there any way I can check the list of bad sectors on the fs or define them manually (after creation)???"
Is there any way that you can ask the Seagate diagnostic to report which bad blocks have been readdressed to a spare block?
Be prepared. Create a LifeBoat CD.