Your approach seems correct. What is the "correct" numerical value of the answer according to your source?
I plugged in your equation to Wolfram Alpha, but using $x$ instead of an explicit $10^8$ as the factor on the left-hand side.
Since it is a cubic equation, there are (in general) three roots. In chemistry problems that involve cubic equations, usually two of the roots will violate physical principles of the problem. In this example, the physically meaningful answer must (i) be real, i.e. have zero imaginary part, and (ii) satisfy $0 \le y \le 1$.
Numerical noise can make exactly satisfying those constraints, especially point (ii), somewhat difficult. You will note that the approximate answers supplied by Wolfram Alpha are:
- $0.999368 - 1.164153 \times 10^{-9} i$
- $1.00063 - 1.047738 \times 10^{-9} i$
- $2,499,998$
The extent of reaction must be between 0 and 1, so obviously the answer of ~2.499 million is not physical. The second answer has (a real part) of 1.00063, which is also higher than one and thus not physical. Thus, only the first answer of 0.999368 is physical. You may be wondering about the $-\pu{ 1.164153E-9} i $ term, i.e. the imaginary part of the answer. It arises from numerical noise in the root-finding algorithm. It can be safely ignored.
Thus, the numerical answer for $y$ is $\approx 0.999368$. That means that the equilibrium concentration of $A$ is $(1-y)^2$, or $\pu{3.99E-7}$ molar.
This makes chemical sense, as we expect that reactions which have very large equilibrium constants will go very nearly to completion.