I'm not sure what are you referring to with "data loss protection" in ZFS, but if you refer to the 'copies' parameter, that's not erasure coding, that's just full copies of the data blocks [0]. They mostly only work for some sector errors on disk. If you lose a whole disk, THEY DO NOTHING. [1]
"The block pointer can store up to three copies of the data each pointed by a unique DVA. These blocks are referred to as “ditto” blocks in ZFS terminology." [2]
And although VMWare calls RAID5/6 "Erasure Coding" [3](!!), I'd say it's not [4].
Note that ZFS (and probably other fs) checksums are not data corruption protection, but data corruption detection ;)
If a checksum error is detected, you depend (mostly) on your RAIDZ protection to recover from it [0]. If you're on a single drive or striped array without mirrors or raidz1/2/3... you're SOL. (ditto blocks can help but they aren't the best. I'd only recommend them if you're stuck on a single drive setup without raid)
But you at least know that your data is corrupt, and that's very important too :)
"The block pointer can store up to three copies of the data each pointed by a unique DVA. These blocks are referred to as “ditto” blocks in ZFS terminology." [2]
And although VMWare calls RAID5/6 "Erasure Coding" [3](!!), I'd say it's not [4].
--Edit: some extra info and links