You can’t get them back out of a snapshot unless they were different versions in that old snapshot. If the file has not changed since you took the snapshot, then the snapshot and the current copy actually share the same physical blocks (and the same physical sectors on disk).
Sounds like you had a pretty good outcome. The thing I would have recommended if I’d gotten in here before you got started is NOT physically removing ANY of the degraded drives until you’ve resilvered at least one new drive in.
That’s because (as you likely are aware, since you had 50K+ CKSUMs on multiple drives and yet still only lost a few files) the CKSUMs on one drive aren’t necessarily going to be the same CKSUMs on a different drive. So by not removing the DEGRADED drives until you’ve resilvered a new one in, you’re maximizing the chances that you’ll have enough parity available in any CKSUM’d block to be able to recover it.
By contrast, if you pull a drive immediately and add a new one, any CKSUM’d blocks for which that drive’s non corrupt sector(s) could have provided the minimum parity necessary to reconstruct it become permanently corrupt and lost.
I’m glad you had a reasonably good outcome from your horror story! This is my favorite war story right here: