So setting a customer linked to a user doesn't set userId on the cart, so after logging in the GetCurrentCart links to the cart and clears the data.
I've updated the UserID on the cart once the customer is linked and this appears to solve the issue, but not ideal.