Assuming that [FFM measured consumption]+[final stewards' weighing result]=[SF declaration] and that the FFM never detected excess flow rate, there seem to be only two reasonable possibilities left: 1) the stewards made a mistake in the initial weighing; 2) SF made the FFM under-read the flow.
The impression from several articles is that the procedure for fuel weighing be standard: any team would be told of any discrepancy between official measurement and declared figure before the race. This time, though, the team (SF) was told just about 8' (iirc) before pitlane opened for the GP and therefore there was no time to carry out another weighing. Even if it wasn't standard practice to warn the team of a discrepancy, the team would know that the stewards have weighed fuel and car, and during the race would act accordingly to protect themselves.
Binotto said that they had already been tested for fuel weight 10 times this year; assuming that he referred to any car of the team rather than just #16, that would be consistent with the stewards choosing randomly 5 out of the 20 cars at each race, which seems plausible. So, there would be about 44% chance that at least one of the two cars of the team would have been checked by the stewards: why take such a risk at a race where there is nothing relevant left to win?
The most likely explanation seems to me that to be a stewards mistake. The question remains, though: if the stewards are correct, the penalty is far too lenient; if they are wrong, there should be no penalty. Maybe lawyers adviced them to settle?