Well...I have to ask...what makes you think that "repairing" bad clusters...is a solution of any kind?
FWIW: Every drive has bad clusters, from the beginning. That, in itself is not a problem for any hard drive...since a drive contains many, many clusters.
AFAIK, there is nothing that repairs bad clusters...but there are utilities that work around bad clusters, marking those sections of a hard drive as unuseable and positing data on other sections of the hard drive.
Recovering Hard Disks with Bad Blocks Hardware Secrets - http://www.hardwaresecrets.com/article/29
The chkdsk /r tool (in XP) does some recovery of data which is placed in/on bad sectors of a hard drive. But...it sometimes encounters situations that it cannot overcome.