Both the Ship data and complaints are to be separated? Wouldn't you want to report on the complaints per shipment? Your current model above allows this at least by the aggregated date level, so the dates are the key to linking these 2 data-sets. If we split, this will create 2 separate data islands unless you have some other key field to link Shipment to their complaints.
As for the calculations, it depends on what date you are looking at when you are reconciliating and what is bounded by your set analysis and date selection.