Take a (smooth) manifold $M$, and a curve $c : I \rightarrow M$, where $I$ is an interval. Then $c$ is a geodesic, if $c' : I \rightarrow \mathbb{R}^n$ is a parallel vectorfield along $c$, i.e. the covariant derivative $\frac{D}{dt} c' = 0$ (or equivalently $c''(t) \in T_{c(t)}M ^{\perp}$ for all $t \in I$).
It is easy to show that every geodesic has unit speed, since:
$$||c'||' = \frac{d}{dt} g(c',c') = 2 \; g\Big(c', \frac{D}{dt}c'\Big) = 0 \;\;\; \text{where g denotes the 1st fund. form}$$
I know that the converse is not true, but where is the Problem? This chain of equality seems reversible to me. Explicitely, if $c$ has constant speed, then: $$0 = ||c'||' = \frac{d}{dt} g(c',c') = 2 \; g\Big(c', \frac{D}{dt}c'\Big) \implies \frac{D}{dt} c' = 0 \;\;\;$$
Because $c' \in T_{c(t)}M$, therefore one must have that $c'' \in T_{c(t)}M ^{\perp}$ unless $c' = 0$ itself. But then the curve is constant and therefore a geodesic.
Where is the mistake in this "proof"?