A special converse

The result of another morning messing around on GeoGebra led to a confrontation with a certain circle theorem.

Triangle ABC is acute-angled. The circle on diameter BC intersects sides AB and AC at P and Q respectively. The tangents to the circle at P and Q meet at X. Then AX is perpendicular to BC.

I actually found this quite hard to prove. It looks simple enough, but it is easy to assume the result during the proof. Even this attempt may not be correct (please point out any mistakes if you spot them!)

Proof.
Join CP and BQ; let CP and BQ meet at Y.
Also put in M, the midpoint of BC, and join MP and MQ. Notice that M is the centre of the circle on diameter BC.

∠BQC = 90 and ∠BPC = 90 (Thales)
So ∠APY and ∠AQY = 90 (straight lines)
These add to 180 so APYQ is cyclic by the converse of ‘opposite angles in a cyclic quad add to 180′
Since ∠APY (or ∠AQY) = 90, AY is a diameter of this circle, by the converse of Thales’ theorem.
I now want to show that X lies on AY. In order to achieve this I will show that X is the centre of this circle.
For brevity, I will again use a, b and c to denote the sizes of angles ∠BAC, ∠ABC and ∠ACB.
Observe that MB = MP (both radii) so triangle BPM is isosceles; therefore, ∠BMP = 180 – 2b
Similarly, ∠QMC = 180 – 2c
∠PMQ = 180 – (180 – 2b) – (180 – 2c) = 180 – 2a (straight line)
∠MPX = ∠MQX = 90 (tangent is perpendicular to radius)
Thus by angles in a quadrilateral add to 360, ∠PXQ = 2a
Now this is where I had trouble. This does NOT show that X is the centre of the circle. The circle theorem that states that ‘the angle at the centre is twice the angle at the circumference’ has no simple converse.
Check out this diagram:

O is the ‘true centre’ of circle Γ; but ∠AO’C is also equal to ∠AOC, by same segment – yet it is not the centre of circle Γ. In fact any point on circle Λ on the same side of AC as B will be equal to ∠AOC; this means that just because an angle is twice ∠ABC does not make it the centre of Γ.
We see that in order to qualify as the centre of circle Γ, a point X must also obey XA = XC (equal radii).
So I propose this ‘special converse’ to resolve this issue:
Let two points, B and O, lie on the same side of a line AC. If ∠AOC = 2∠ABC, AND OA = OC, then O is the circumcentre of triangle ABC.
In order not to stray too far from the original problem, the proof of this is included at the end.
Returning to our original diagram, we observe that XP = XQ as they are both tangents to the circle with centre M. Also, since ∠PXQ = 2∠PAQ, X is the centre of the circle by the ‘special converse’.
Thus it lies on the diameter AY. (Seems like a lot of work to show that A, X and Y are collinear – I probably overlooked something really obvious. If anyone has a faster proof, please tell me in comments!)

We know that since CP is perpendicular to AB, and BQ is perpendicular to AC, CP and BQ are altitudes, making Y the orthocentre of ABC.
As AY joins vertex A to the orthocentre, it is therefore perpendicular to BC.
So AX is perpendicular to BC as required.

Proof of the ‘special converse’ (by contradiction)
Let two points, B and O, lie on the same side of a line AC. If ∠AOC = 2∠ABC, AND OA = OC, then O is the circumcentre of triangle ABC.
We will assume that the forwards/direct theorem has already been proven.
Suppose that ∠AOC = 2∠ABC, and OA = OC, but O is not the circumcentre of ABC.

Since OA = OC, it is possible to draw a circle with centre O that passes through A and C. Let this circle cut BC (extended if necessary) at B’. Then as O is the circumcentre of AB’C, we use the direct theorem to obtain ∠AOC = 2∠AB’C.
So 2∠ABC = 2∠AB’C
∠ABC = ∠AB’C, implying, by corresponding angles/F-angles that B’A and BA are parallel – yet they meet at A.