How do we measure the velocity in curved space-time?
I assume that, referring to local coordinates $x^0,x^1,x^2,x^3$, the vector $\partial_{x^0}$ is timelike and $\partial_{x^i}$ are spacelike for $i=1,2,3$.
I henceforth use the signature $-,+,+,+$.
Notions like velocity can be defined in general coordinate systems but some precautions are necessary.
First of all $x^0$ is not the physical time measured along timelike curves $x^i=$ constant (i=1,2,3) representing observers at rest with the coordinates and thus parametrized by the coordinate $x^0$. The physical time, measured with physical clocks, is the proper time along these curves $d\tau = \sqrt{-g_{00}} dx^0$. In practical terms, a "small" displacement $$\Delta a \partial_{x^0}$$ along this temporal axis corresponds to a physical interval of time $$\Delta\tau = \sqrt{-g(\Delta a \partial_{x^0},\Delta a \partial_{x^0})}= \Delta a \sqrt{-g_{00}}$$
A spacelike $3$-surface $\Sigma_{x^0}$ defined by fixing $x^0=$ constant can be interpreted as the rest space of the coordinate system provided a suitable (Euclidean) metric is defined on it. This is not the usual metric $h$ induced by $g$ in the standard way $h(X,Y):= g(X,Y)$ for $X,Y$ tangent to $\Sigma_{x^0}$. The definition of the physically correct metric arises form the constraint that light-like paths must have constant velocity $1$. It is not difficult to prove that (e.g., see Landau-Lifsits' book on Field Theory sect. 84 ch.10 for a nice physical "proof") the appropriate metric is just that you wrote. If you consider a pair of vectors tangent to the rest space $\Sigma_{x^0}$, i.e., $$X= \sum_{i=1}^3 X^i\partial_{x^i}\quad \mbox{and} \quad Y= \sum_{i=1}^3 Y^i\partial_{x^i}$$ then the physical scalar product is $$\gamma(X,Y) := \sum_{i,j=1}^3 \left(g_{ij} - \frac{g_{i0}g_{j0}}{g_{00}}\right) X^iY^j\:.$$ Notice that $\gamma$ is defined on all vectors in spacetime not only those tangent to $\Sigma_{x^0}$: If $$X= X^\mu\partial_{x^\mu}\quad \mbox{and} \quad Y= Y^\nu\partial_{x^\nu}$$ $$\gamma(X,Y) := \left(g_{\mu\nu} - \frac{g_{\mu 0}g_{\nu 0}}{g_{00}}\right) X^\mu Y^\nu = \sum_{i,j=1}^3 \left(g_{ij} - \frac{g_{i0}g_{j0}}{g_{00}}\right) X^iY^j$$ and it automatically extracts the spatial part of them, since $\gamma(X, \partial_{x^0})=0$.
Now we pass to the definition of velocity of a particle with respect to the said reference frame. The story of the particle is a curve $x^\mu = x^\mu(s)$, the nature of $s$ does not matter. The tangent vector to this curve is $$X= \frac{dx^\mu}{ds} \partial_{x^\mu}$$
We can write, if the curve is sufficiently smooth,
$$x^\mu(s+ \Delta s) = x^\mu(s) + \Delta s X^\mu(s) + O((\Delta s^2)) \:.$$
During the interval of parameter $\Delta s$, the particle runs in $\Sigma_{x^{0}(s)}$ an amount of physical space
$$\Delta l = \sqrt{\gamma\left( \Delta s X,\Delta s X\right)} = \Delta s \sqrt{\gamma(X,X)}$$
up to second order $\Delta s$ infinitesimals.
The corresponding amount of physical time is extracted from the orthogonal projection of $\Delta s X$ along the time axis $\partial_{x^0}$ taking its normalization into account:
$$T = g\left( \Delta s X, \frac{\partial_{x^0}}{\sqrt{-g_{00}}}\right) \frac{\partial_{x^0}}{\sqrt{-g_{00}}} = \Delta s \frac{X^0 g_{00} + \sum_{i=1}^3 g_{0i}X^i}{-g_{00}}\partial_{x^0}\:.$$
According to my first comment above, the length (with respect to $g$) of this vector is just the amount of physical time spent by the particle in the interval $\Delta s$ of parameter. This time is measured by the proper time of a clock moving along the $x^0$ axis. $$\Delta \tau = \sqrt{-g(T,T)} = \Delta s \frac{X^0 g_{00} + \sum_{i=1}^3 g_{0i}X^i}{\sqrt{-g_{00}}}$$ up to second order $\Delta s$ infinitesimals.
In summary, the velocity of the particle referred to the coordinates $x^0,x^1,x^2,x^3$ is $$v = \lim_{\Delta s \to 0}\frac{\Delta l}{\Delta \tau} = \sqrt{-g_{00}}\frac{\sqrt{\gamma(X,X)}}{X^0 g_{00} + \sum_{i=1}^3 g_{0i}X^i}$$ so that $$v^2 = -g_{00}\frac{\gamma(X,X)}{(X^0 g_{00} + \sum_{i=1}^3 g_{0i}X^i)^2} $$ This is the rigorous expression of the formula you wrote. The vector $X$ in your case has components $X^\mu = dx^\mu$. The minus sign in front of the right-hand side is just due to the different choice of the signature of the metric.
COMMENT. These notions are not related with the choice of a curved spacetime. Everything is valid also in Minkowski spacetime referring to non-Minkowskian coordinates with $g_{0k}\neq 0$ (and possibly $g_{00} \neq -1$). A standard example are coordinates at rest with a rotating platform with respect to an inertial system in Minkowki spacetime.