C++ Arrowheads in DynamicDraw of CRhinoGetPoint

Hi,
I am trying to draw an arrowhead in my DynamicDraw method of a custom CRhinoGetPoint. The code below isn’t drawing an arrowhead so I must be doing something silly. What is the proper way to accomplish this? Also, I am assuming the vector magnitude controls the arrow size - is this a correct assumption (or how do you size the arrow)?
Thanks,
tom

//partial code from dynamic draw method

//prep arrow
            ON_2dVector a_dir(elbow2d.x - target2d.x, elbow2d.y - target2d.y);
            a_dir.Unitize();
            a_dir *= _leader_scale;

CRhinoArrowhead ah;
            ah.SetDirection(a_dir);
            ah.SetPoint(target2d);
            
            //draw arrow
            vp.DrawArrow(_plane, ah);

Hi Tom,

Let me know if this info helps.

Hi Dale,
Yes & thank you, that is useful info.
tom