Consider the following:

  1. Ensure the report parameters include all applicable data values.  If the data values expected to sum up are outside the report parameters, the totals will be incorrect.
  2. Use Running Totals instead of Summary fields as Running Totals give more control.  In the Evaluate section of the Running Total, evaluate on the change of a field and use the ID or IDKEY for the field that you are summing.
  3. If using a DistinctCount and getting lower than expected numbers, consider using a Count instead. This may be filtering out records which may be appearing in multiple groups.