It appears that I misunderstood the relationship between the packets coming through the filter driver and what ultimately gets written to disk.
The solution here is to addend the packet being sent to user mode with more information like offset -- and then apply some dedup detection on the resulting writes. It is also possible for the packets to come out of order; so some care was necessary to handle this situation as well.