leaving the original shipping code in place will not cause an issue, the rate lookup will just fail.
the cause of the problem is that the shipping rate you are returning is being added to the grand total of the cart. but there is no shipping amount being sent to paypal.
If you examine the full request, you will see:
<OrderTotal currencyID="USD">2448.97</OrderTotal>
<ItemTotal currencyID="USD">1859.97</ItemTotal>
<TaxTotal currencyID="USD">186</TaxTotal><ButtonSource>WebAssist.eCartPHP.Pro.DP</ButtonSource>
<PaymentDetailsItem><Name>Enclosure Kit </Name>
<Amount currencyID="USD">379.99</Amount>
<Quantity>2</Quantity><Number>5</Number>
</PaymentDetailsItem>
<PaymentDetailsItem>
<Name>Enclo sure Kit </Name>
<Amount currencyID="USD">924.99</Amount>
<Quantity>1</Quantity><Number>41</Number>
</PaymentDetailsItem>
<PaymentDetailsItem>
<Name>Cat Ramp with Scratching Post</Name>
<Amount currencyID="USD">175</Amount>
<Quantity>1</Quantity>
<Number>84</Number>
</PaymentDetailsItem>
the paypal system will look at the individual item info and make sure that the item info passed adds up to the item total. It will also take the item total, tax and shipping and make sure it adds up to the OrderTotal.
In your case, ItemTotal plus tax is not adding up to the Order total.