I don't think the method would work as stated. Generally, if you measure two things (the two tracks in this case), you can estimate two things, everything else must be assumed. Here we want to know Crosswind, Headwind, and compass error, which are three things.
If there is only cross wind the method would work, in principle. The key image is an isosceles triangle which is rotated by the compass error. But a head wind would also 'rotate' the triangle. You could not distinguish between the two effects.
Fortunately, as you are not correcting for the crosswind, you can simply measure the headwind (and calculate TAS while you are at it) by timing the two legs. In principle you now have all you need.
Assuming sufficient accuracy, known (local) magnetic variation, etc, etc!
PS For the angles, for better accuracy, I would suggest plotting the GPS tracks on a half-million chart and measuring the true tracks that way. If you can access the time-stamps for the plotted points, you would get excellent timing information too. Obviously you would not get the results in flight, but the measurements would have been made under flight conditions.