It's a real pain that you can't control a chopper very accurately in this game. It seems that they ignore move/WP commands if the distance is too small around 50 meters give or take.
The same thing happens in A3 however but if you use the Drop Cargo WP they move to the exact location, you don't have that option in A2/OA.
Setvelocity could be made to work but I haven't mastered it yet.
I did get it to fly to an exact location but for some reason it flies backwards, I tried flipping the direction vector but that just gives strange results.
You can try it and see if you can do anything with it.
// place this in the choppers init box
//nul=[player, this,0.999] execvm "fly.sqf"
target = _this select 0;
obj = _this select 1;
timer = _this select 2;
obj setVelocityTransformation [
getPosASL target, getPosASL obj, velocity target, velocity obj, vectorDir target,vectorDir obj, vectorUp target, vectorUp obj,timer];