The cart object doesn't have anything to do with the storing of the cart.... That can be done or not with any cart object.
If you remove the store cart summary and store cart details in database, then you can add the redirect to the email code instead.
Also you could use the session_id() instead of the order id from the database to save the order.
Order Details wouldn't work because there is a required field to store the orderID that isn't getting generated, so there would be no way to pair a detail to an order.