Proof Verification – Prove that any 0-order divisor on a non-singular projective curve of the \$ g \$ kind is equivalent to another

Could you please check if the solution below is ok?
There is an exercise from Shafarevich's Basic Algebraic Geometry, Vol. 1, ex. 7.7.21.

Let $$o$$ to be a point of a smooth algebraic curve $$X$$ of the kind $$g$$. Using the Riemann-Roch theorem, prove that any divisor $$D$$ with $$deg D = 0$$ is equivalent to a divisor of the form $$D_0-go$$, or $$D_0> 0, deg D_0 = g$$.

This is equivalent to showing that space $$mathcal {L} (go + D)$$ to the dimension $$geqslant 1$$. Suppose that it has a dimension $$0$$. By the Riemann-Roch theorem we have
$$ell (go + D) – ell (K-go-D) = 1$$. So, $$ell (K-go-D) = – 1$$. Since $$K-go + D$$ and $$K-go$$ are of the same degree we have
$$ell (K-go) leqslant ell (K-go + D)$$. Now, apply Riemann-Roch to $$go$$:
$$ell (go) – ell (K-go) = 1$$
But the space $$mathcal {L} (go)$$ is the space of all the rational functions having the pole of order $$leqslant g$$ at $$o$$, so of dimension $$g + 1$$,
and $$ell (K-go)$$ is dimension $$g$$ – contradiction.

I do not like the last argument and we did not use the structure of a canonical divisor.