There is another often overlooked tool that can oftentimes allow a failed RAID set's data to be recovered: hardware logs. And this method -- if it works -- is free...
Most of the time, a perceived hard drive failure is actually the array controller flagging the drive as failed as a result of an exceeded error threshold -- not because the drive has really failed. A common effect of this can be seen when a server reports that a drive has "failed", but the drive can be resurrected by reseating.
If two drives in a RAID5 set (or even both drives in a RAID1 set) fail, check the hardware logs to see which drive failed last, then shut the system down. Pull both failed drives, then reseat JUST the most recently failed drive. Reboot the system -- if you're lucky, the most recently failed drive will come back online and stay online for long enough to secure and/or recover data.
Replace the drive that failed first with a new one, cross your fingers, and wait for the RAID set to rebuild. Once this has completed, you can then replace the other failed drive. Once the RAID set finishes rebuilding to the second drive, the RAID set's health will almost always be fully restored.