Sometimes Recuva chooses not to overwrite a file, and it says so by saying something like "Not Overwritten - file is already overwritten by existing file."
I believe Recuva should hit the cluster tips and also overwrite files within the $MFT.
Just a thought.