"Checkout as guest" forces your user (at the beginning of your purchase funnel!) to say to themselves: 

"No, I do not plan to use this service again. I'm annoyed you would ask."

Now, to stay internally consistent, even if they were on the fence on returning later they can't come back without contradicting themselves.

The best way to do this is:
1. No "checkout as guest" option.
2. Just enter card details.
3. At end, enter email address for user to get receipt.
4. They press buy button.
5. On purchase confirmed page, put Save info for easy ordering? button.

User already put their email, now it's just one field to add a password. If they were planning on just ordering the item they are closing the tab 0.04 seconds after purchase is confirmed anyway.

In addition, you are making the ask as late as possible in the funnel, which is good.