Show that $\text{FACTORING} \le_P \text{SQROOT}$
Your proof is essentially correct. 
You may improve rigor by either calculating exactly or giving a bound on it's expected runtime. 

If we take the simple case(which is also the worst case) where k=2 we get a probability of 1/2 to get a different root. 

It should be noted that since our root x was uniformly random over Z/nZ it is also uniformly random over the roots of a. And therefor the probability of success at each attempt is 1/2 regardless of how our SQROOT algorithm chooses which root to provide. 

If the probability is 1/2 per iteration the expected number of iterations is 2. This can be as 1/2+1/4+1/8... With probability 1/2 it takes 1 iteration with probability 1/4 it takes exactly 2 (fail, success) with probability 1/8 it takes exactly 3 (fail,fail, success) etc. 

For k>2 the probability of success only increases and the expected invocation count is lower. 

Therefor the expected runtime is 2 invocations of SQROOT + O(log(n)).
The additional element is for the gcd and random selection part (or even receiving input and giving output).