I have encountered and fixed a problem that I think is the same as this. The
calcTax service is called for shipping and promotional amounts, with no
product id. The search of the TaxAuthorityRateProduct table assumes that if
there is no product we only need to find TARP rows with a ProductCategory of
null. Not so! We also need to find rows with taxShipping and taxPromotions
set to Y.