@DRMasterChief
So it’s actually about multi-shipping, rather than simply changing the carrier on an order.
The solution you’ve described, using the module you’ve developed, has one major drawback – it won’t work properly with any carrier module or with any external integrations such as Base.com or eMagicOne.
Install any DHL, DHL Pickup, DPD, FedEx or UPS module – none of them will work properly.
That is why the standard solution available in thirtybees, known as "split-order", is a better option. If a single customer order involves several carriers, that order is split into several separate sub-orders, and in each of these sub-orders, all carrier modules and all shop integrations with external order-handling systems work correctly.