Summary: I really just want a way to do a round-trip check on all encryption at writing time to make sure nothing gets corrupted in the process.
It would protect against corruption while encrypting. My data is by far dominated by video with lossy encoding. missing a few bytes here or there doesn't actually do much harm. If I hand geli some corrupt bytes it'll happily encrypt it, the zfs checksums will match, decrypting will work and give me the same slightly corrupted data as geli was given. Not a big deal.
If there's a corruption while taking the ZFS checksum then ZFS should notice that and error handling will commence. This is okay.
If I hand geli some data and it encrypts it and there's a corruption during encryption then the corrupt encrypted data will get handed to ZFS which will checksum it and it'll pass. Then on reading it it will fail to decrypt, effectively taking out a whole block of data with it. This is the bad case. On the other hand if there a geli verification checksum and geli does an immediate check of the data (which I'm not sure it does) then the error will be detected during the write process instead of only when later attempting to decrypt it. Detecting an error here I'd hope geli does something smart like attempting another encryption or reporting a disk failure up the stack.
I guess, come to think of it, the verification checksum isn't really necessary. All I really need is geli to attempt a decryption on writing. A less convenient alternative is to ensure that every application that writes to the disk does it's end to end verification. That may not be achievable realistically.
A second reason one may want geli verification but which doesn't concern me is to ensure that all data on the drive was really written by you. Without the checksum it is possible that the drive could have been tampered with and you would not know it.