Checksum as it is implemented now only sets the four bytes used by the checksum itself to 0 before calculating the new checksum.
It's worked fine so far, however, in D2MOO, the function indicates that last_time, play_time and map_seed should also be set to 0 before calculating checksum for versions > 91. This makes sense because those values don't really change anything about the save file itself, they're more like metadata.
More testing required.