dunno if any of yall are familar with MD5 checksums but it is my understanding that download play does something similar and with these devices the rom is either patched or patched on the fly which changes its file size and/or the order of the bits thus changing the checksum. When the download is complete on the DS that does not have the game it then verifies that the checksum of whatever matches. And that is when it gets trippy, the DS realizes that its Downloaded file does not match the checksum number it is supose, it is off meaning the DS thinks the wireless download became corrupted or did not finish properly.
That is why if both own the game their is no issue, it does not go through that. The only fix I could see is if some how the firmware injects the correct checksum value or patches the roms on the fly in such a way as to not affect the checksum. It is evident that 1st party titles straight from Nintendo are the most affected by this most likely because they follow everything by the books but other developers may not have done it right and might have skipped this safety check of making sure the file downloaded correctly. It would seem this is just a way to make sure the file downloaded properly and was not meant as a way of sercurity or to prevent this from working. An added unintentional bonus for nintendo though.