Please verify my proof of: There is no integer $\geq2$ sum of squares of whose digits equal the integer itself.
Your argument is good, though a little vague at the end. I would tighten it up by remarking that $$a_{n-k}>0\implies a_{n-k}\left(10^{n-1-k}-a_{n-k}\right)>1\times \left(10^{n-1-k}-9\right)$$ which is greater than $99$ for all the terms you wish to discard. In that way, you reduce the problem to two digit cases, and you resolve those correctly.
An algebraically simpler argument: If your integer has $n$ digits, then the sum of squares can be at most $81n$. But we have $$10^{n-1}≤81n\implies n≤3$$ so your number can have at most $3$ digits. Noting that $81\times 3= 243$ we see that in fact we only have to check up up $243$. This can easily be checked by (mechanically assisted) hand.
The problem requires
$$
\begin{align}
0
&=\sum_{k=0}^n\left(10^kd_k-d_k^2\right)\\
&=\sum_{k=0}^nd_k\left(10^k-d_k\right)
\end{align}
$$
The only negative term can be $d_0(1-d_0)\ge-72$.
For $k\ge2$, if $d_k\ne0$, then $d_k\left(10^k-d_k\right)\ge10^k-1\ge99$.
Therefore, only $d_0,d_1$ can be non-zero. So we just need to find $d_0,d_1$ so that
$$
d_1(10-d_1)=d_0(d_0-1)
$$
However
$$
d_1(10-d_1)\in\{0,9,16,21,24,25\}
$$
while
$$
d_0(d_0-1)\in\{0,2,6,12,20,30,42,56,72\}
$$
The only way they can be equal is if both are $0$ and that requires $d_1=0$ and $d_0\in\{0,1\}$.
That is, the only solutions are $0$ and $1$.
Your proof was a bit difficult to read, but it looks similar.