I don't think the angle in the small circle formed by connecting the centers of the circles can be assumed to be 90 degrees. Consider if you take the 9 cm circle and gradually shrink it until it's just 6 cm ... then the smaller circle would also be 6 cm in order to reach the 12 cm line, and those 6 cm circles would be sitting on top of each other, just touching the 12 cm circle, and the angle inside the top circle would be much less than 90 degrees.
For this problem, I would have taken the approach of saying there are three variables (radius, x, and y coordinates of the small circle) with three equations (distance from the 9 cm circle, distance from the 12 cm circle, and distance from the top line at 12 cm) and tried to solve that system of equations. But it sounds like there's some theorem or something that makes this solvable much more easily, and I don't know of such a theorem.