Sorry for the late post and maybe too late, but I've used Action Front Data Recovery before. They do a great job, but it costs. But they will send you a list of the files they can recover before they start. They've now been bought out by Seagate, I don't know if that affects what drives they will recover now
https://services.seagate.com/ and they are in Markham.
I've also used software like RecoverMyFiles and what not with some success depending on what's wrong. Usually I use those for accidental deletion or non booting drives. If the drive isn't even recognized by the system I haven't got that one to work.