Yes, this is (my opinion) a defect in the design of X-Cart. This issue may have been patched in x-payments 2.0.1 (x-cart 4.6.2?) - but I am still using 1.0.6 so I can't test if it's been "fixed".
The fundamental defect is that X-Cart "processes" an order before submitting to payment gateway - so this will be a problem with or without X-Payments.
I solved this by using a 3rd party checkout (CheckoutOne) and the X-Payments connector from AlteredCart:
http://www.alteredcart.com/product.php?productid=8
and
http://www.alteredcart.com/product.php?productid=21
With the AlteredCart checkout and tools, an order is not "processed" in xcart until payment is processed. I only see one order number per transaction.
The benefit of this is that CheckoutOne is a superb customer UX and solves the biggest UX defect (my opinion) in X-Cart -- which is the checkout.
I hope my tone does not come across as bashing X-Cart -- I'm not. I have accepted that X-Cart does some things really well, and some things not -- so I spent $200 and solved the problem.
In addition to the x-payments connector, CheckoutOne also has a suite of tools that are a must have... for cart abandonment and deciphering cart errors. I am fully invested in AlteredCart Checkout and couldn't be happier. Good luck.