I have heard similar stories many times in this forum, but I would like to give a deeper motivation on my defense of USB.
USB is a master-slave protocol, in which the host polls the devices. So no collisions nor congestions are possible.
The latency problem comes because you can never know how much time passes between the event and the communication with the host. Polling period is between 1 ms and 10 ms, which is clearly not human-visible (even though it can still do damages).
Dragging the tool despite repeated user action means that there is a problem in some buffer, that maybe does not consider event priorities (not a USB problem).
WHEN can latency be a problem? Well, only when a device has to say something to the host.
Maybe it needs to update the current position, maybe because a switch has been clicked.
3Dprinters usually have no position feedback, and the switches are for homing only (or slow events, like a filament sensor). While the motion planner is working, it can take its feedback by itself, since it knows the commanded speed, and the previous position.
I 100% agree that a machine with many stepper drivers will NEVER be able to run on USB, there are plenty of low-latency multiple-devices protocols(EtherCAT, CANBUS, or the recent Time Sensitive Ethernet, just to name a few ), but... we are talking about a 3Dprinter... which will have at most a couple of devices on the bus, and no significant information that needs to travel from device to host.