Here's the deal: the problem is solved, if we assume that $f$ has a dense orbit. This is sometimes taken as the definition of transitivity, but it's not the definition I was thinking of (which is: given two open non-empty sets $U$ and $V$, there exists $n\geq 0$ such that $f^nU\cap V\neq \emptyset$).
The thing is, this definition implies the existence of a dense orbit, if we assume that $X$ is a complete separable metric space. (it may not be perfect, but it should be separable!)
So... once we know that we have a point $x$ such that $o^+(x)$ is dense in $X$: take any point $y$. Let us see that $o^+(y)$ is dense in $X$. Let $z\in X$.
Let $\epsilon>0$. There exists $n\geq 0$ such that $d(f^n(x),y)<\epsilon/2$. As $o^+(f^n(x))$ is also dense in $X$, there exists $k\geq 0$ such that $d(f^{n+k}(x),z)<\epsilon/2$. Thus since $f$ is an isometry,
$$ d(f^k(y),z)\leq d(f^k(y),f^{n+k}(x)) + d(f^{n+k}(x),z) \leq d(y,f^n(x))+\epsilon/2 \leq \epsilon$$
Since $\epsilon$ and $z$ are arbitrary, this proves that $o^+(y)$ is dense in $X$.