なんとなくそれっぽい感じになりますた、根本的に違うかも・・
// クライアント座標から-1.0〜1.0に変換
half.X := (ClientWidth div 2);
half.Y := (ClientHeight div 2);
pos.x := ((pos.x - half.X)/(ClientWidth));
pos.y := - ((pos.y - half.Y)/(ClientHeight));
//適当にそれっぽい値にする
pos.x := pos.x * ((1+pos.Z));
pos.y := ((pos.y * Scene.FovH)*(1+pos.Z))/2;//
// プロジェクションマトリクスで座標変換します。
pos:=NowTransform(pos, NowInvMatrix(Scene.ProjectionMatrix));

testFigure2.Figure.TopFrame.SetTranslation(Camera ,pos);

これで適当なZ値で2点を取ってその直線に交差する平面を探せば良いのかな?
DirectXにD3DXIntersectって関数があるらしいけどQDの場合は自前でやるしかないのかなぁ・・