Thanks Steve. The use case for this is we want to set customer's shipping charges based on the mix of items purchased using non-standard rules. As part of that, we really need to show the customer the correct charge in the basket. I suspect anyone using the set method in an extension is probably going to want the same. I'm going to have to go back to square one and try adding line service items for shipping in this case. That method failed previously, but hopefully I can use getLatestAddition() to overcome the issue we were having now we're on 21.1