There's a typo in the first step. @mjw caught it. Note that you're applying the quadratic formula on $p^{1/3}$, so $$p^{1/3} = \dfrac{-b ± \sqrt{b^2 - 4ac}}{2c}, \text{ if }c \ne 0.$$
Another missing link in your proof is your lack of argument about the claimed irrationality of $± \sqrt{b^2 - 4ac} - 2cp^{2/3}$.
As you handled the degenerate case "$c = 0$ and $b \ne 0$" well, we'll keep the assumption "$c \ne 0$ or $b = 0$" for the rest of the proof. Also we assume that $\sqrt{b^2-4ac}$ is irrational. Multiply $2c$ on both side of the above equality, then cube it.
\begin{align}
8c^3p =& -b^3 \pm 3b^2 \sqrt{b^2-4ac} - 3b(b^2-4ac) \pm (b^2-4ac)^{3/2} \\
=& -4b^3+12abc \pm 4(b^2-ac) \sqrt{b^2-4ac} \\
2c^3p =& -b^3 + 3abc \pm (b^2-ac) \sqrt{b^2-4ac}
\end{align}
Make $\sqrt{b^2-4ac}$ the subject of the above equality. If $b^2-ac \ne 0$,
$$\sqrt{b^2-4ac} = \pm \frac{2c^3p + b^3 - 3abc}{b^2-ac} \in \mathbb{Q},$$
contradicting our assumption on the irrationality of $\sqrt{b^2-4ac}$ if $b^2 - ac \ne 0$.
Assume that $b^2 - ac = 0$. Then $b^2 - 4ac = b^2 = -3b^2$, and $$p^{1/3} = \frac{(-b\pm\sqrt3|b|i)}{2c} = \begin{cases} \frac{b}{c} e^{2\pi i/3} \text{ or } \frac{b}{c} e^{4\pi i/3} \text{ if } b > 0 \\ \frac{b}{c} e^{\pi i/3} \text{ or } \frac{b}{c} e^{5\pi i/3} \text{ if } b < 0 \end{cases}.$$
In this case, if $b \ne 0$, we don't have the desired conclusion, since $p = \left(\dfrac{b}{c}\right)^3$ might not be an integer, so it's not a perfect cube.
If $b = 0$, we use the assumption $b^2 = ac$, we've $a = 0$ or $c = 0$.
- If $a = 0$, only the term $cp^{2/3} = 0$ is left in the original equation, but $p \ne 0$ as $p$ can't be a perfect cube, so $c = 0$.
- If $c = 0$, the original equation becomes $a = 0$. Done.