I had the same problem with my MailChime-Contact Sensor hack. Missed about 30%, but whenever I checked, it worked fine.
My current mailbox setup is based on an zigbee Visonic MCT-370 SMA long-distance contact sensor
My mailbox is metal. So far, it hasn't missed a delivery.
If you don't have a distance problem, try just the contact sensor.