^ Custom checksums aren't obsolete. TCP uses 16 bit checksums. This means that, on average, one packet out of 2^16 (65536) will have a correct checksum but contain corrupted data (if my probability math is correct).
This is the reason that many downloads list the MD5 or SHA-1 checksum next to them, even though they are transferred over TCP.
Using the 4-byte checksum in the protocol means that only one out of 2^32 packets (~4 billion) will be corrupt, but have the right checksum.
the reason why many downloads has a hash next to them is for security considerations (so you can check you downloaded the binary the author wanted you to download and not a hacked/replaced one)
two checksums sounds like a little overkill to me. dont forget: the corrupted data with the correct checksum must also follow the protocol to do any harm. as bitcoin is designed to trust other nodes as little as possible i dont see a problem.
anyway: i dont think the current checksum does harm in any way