In the function uc_discounts_order(), with op 'save', there's a line of code like this:

//Force tax recalculation (currently unused but may be required if line item weights change)
module_invoke("uc_taxes", "order", "save", $arg1, "");

When this line runs, taxes are calculated ignoring line items from the uc_fee module, which is a problem (if you happen to want your fees taxed, which I do). If this line is commented out, taxes are calculated correctly for fees - and they appear to still be calculated correctly for discounts.

The comment suggests this line could be safely removed. Whattaya say?