The reason this stuff is hard is because there are a lot of identifications going on behind the scenes when we write down equations like they one you're meant to prove. It can be tricky to keep track of them all until you gain some intuition. In the meantime, make everything explicit.
Let's start with $v_p \in T_p U$. It's a derivation of $C^\infty(U)$ at $p$, i.e. it sends each function $f \in C^\infty(U)$ to some number $v_p(f) \in \mathbb R$, and for any $f, g \in C^\infty(U)$, we have that $v_p(fg) = v_p(f)g(p) + f(p)v_p(g)$.
What about $T_px(v_p)$? It's an element of $T_x(p)V$, so it is a derivation of $C^\infty(V)$. Explicitly, we have for any $f\in C^\infty(V)$ that $T_px(v_p)\cdot f = v_p(f \circ x)$. This makes sense since $f\circ x \in C^\infty(U)$. It's easy to check that, under this definition, $T_px(v_p)$ really is a derivation of $C^\infty(V)$ and $x(p)$.
We've figured out what the left-hand side means as a derivation, so let's do the same thing for the right-hand side. First, it should be said explicitly that $\gamma: (-\varepsilon, \varepsilon) \to U$ is a smooth curve with $\gamma(0) = p$ and $\gamma'(0) = v_p$. To figure out what $\gamma'(0) = v_p$ actually means, we have to say how $\gamma'(0)$ is a derivation. By definition, for any $f \in C^{\infty}(U)$, $$\left.\gamma'(0) \cdot f = \frac{d}{dt}\right|_{t=0} f(\gamma(t))$$ So what we're saying is that, understanding $\gamma'(0)$ as a derivation, it is equal to the derivation $v_p$. It is a nontrivial fact (which you should have already seen a proof of) that every derivation $v_p$ is equal to $\gamma'(0)$ for some smooth curve $\gamma$.
With this in mind, let's try to understand $\frac{d}{dt}|_{t=0}(x \circ \gamma)(t)$ as a derivation of $C^\infty(V)$ at $x(p)$. For any $f \in C^\infty(V)$, we have that $$\left. \frac{d}{dt}\right|_{t=0} (x \circ \gamma)(t) \cdot f = \left. \frac{d}{dt}\right|_{t=0}(f \circ x \circ \gamma)(t) = \gamma'(0) \cdot (f\circ x) = v_p(f \circ x) = T_p x (v_p) \cdot f$$ This proves the claim.
Throughout the argument above, we thought of tangent vectors as derivations. We figured out what they were by asking how they acted on smooth functions. This is the same process you should always go through if you don't understand something having to do with tangent vectors.
By the way, there's very good reason to think of tangent vectors as derivations instead of as equivalence classes of curves. If we think of them as derivations, the vector space structure of $T_pM$ becomes obvious. Whenever you're adding tangent vectors or multiplying them by scalars, you should think of them as derivations. On the other hand, if you need some geometric intuition about them, thinking of them as coming from smooth curves is extremely useful. Try to get used to both ways of thinking, since they're both useful in their own right.
Best Answer
No, we have defined a derivation on $T_{f(p)}M$, which is a device that takes elements of $C^\infty(M)$ and outputs a number (subject to certain rules). It works in two steps:
Without looking at the internal structure of this device, all we see is: functions on $M$ go in, numbers come out. So, it's a derivation on $M$.