Drones that are being recalled, often get stuck in a loop of "check for collisions" "move away if too close", this causes them to almost never get close enough to the pick up point and trigger an auto dock event.
The collision checks are thrown by the **non physical rails** and potentially the boundary box of the main ship itself but that's harder to see.
I've put rails far, far away from the main ship yet the same thing still happens, it's also obvious that the non physical rails are being considered in collision checks.
Example, deep within the boundary box of the main ship: {F6745}
Example, at the edge of the boundary box of the main ship: {F6747}
It also depends on the angle, often when they come from the point where nothing would obstruct them, they manage to quickly dock.