this worked for me. I would post the entire function but I have heavily modified it to do more custom things relevant to the module I am was working on that will just clutter up the answer
I followed the way done on here using the 3rd answer down which works on 2.1.
How to create order programmatically in Magento 2?
then changed this line
$cart = $this->cartRepogitoryInterface->get($cart->getId());
to
$cart = $this->cartRepositoryInterface->get($quote->getId())->setCheckoutMethod(CartManagementInterface::METHOD_GUEST);
which can be found in this file
magento-2/vendor/magento/module-quote/Model/GuestCart/GuestCartManagement.php
you will also need to add
use Magento\Quote\Api\CartManagementInterface;
And don't forget to remove the customer creation parts.