Two possibilities...
1) You are using a button or activation module with your docking point slaved to it to trigger a launch directly.
That can cause the drone to undock immediately and ignore any launch path you've set.
Instead, try using logic to change the direction of rails to guide the drone through the launch path. I can help you set that up when I get home if you're unfamiliar with how this process works.
2) You are using a shootout rail as your launch path and the drone is undocking at the point where the shootout rail changes direction.
Instead, try using a pickup rail as a path to your shoot out rails? That's how I launch smaller craft from internal bays.
In this method, your flow path should be as follows...
Docking Point (rail basic) >>> Exit Path (rail basic or pickup rail) >>> Launching Path (shootout rail) >>> the drone launches.
That way, your drone will position itself for launch, exit the main craft and then launch.
Other things that may help you with regard to launch systems...
- Mass Enhancers are essentially a requirement for a speedy and efficient drone launch system.
- Use a rail speed controller to speed up the basic and pickup rails. Slave your rails to the controller and then slave the controller an activation module in the ON state for maximum speed..
- With a simple logic timer, you can program your launch system to automatically change to a pickup/retrieval system so your drones dock and return to storage when you issue the "carrier recall" fleet command.