Given that the directional derivative is defined formally as:
$$ \nabla_\vec{v}\, f\left(\vec{x}\right) = \lim_{h \to 0} \frac{f\left(\vec{x} + h\vec{v}\right) - f\left(\vec{x}\right)}{h|\vec{v}|} $$
It's not exactly clear why the magnitude should matter here if we are taking some step $h\vec{v}$ if $h \to 0$. If the directional derivative can be calculated via $\nabla f\left(\vec{x}\right) \cdot \vec{v}$, any scalar to $\vec{v}$ will arbitrarily scale the magnitude of the directional derivative - but if we take the limit definition, shouldn't magnitude not matter as we are investigating how $f$ changes with some infinitesimal movement in the direction of $\vec{v}$?
One explanation was to imagine a function $f(x, y)$ representing the altitude via a surface, with a person moving around it. If a person were to move with double the velocity in a certain direction, they should have double to amount in change of height. But I can't reconcile this with the formal definition: why should doubling the velocity change how much $f$ changes if you move infinitesimally in the direction of the velocity?