Short answer: Verify this on Desmos/GeoGebra.
Long answer: The intuition behind horizontal dilation isn't quite the same as vertical dilation. Personally, I find the vertical dilation a lot more intuitive.
________________________________________________________
In vertical dilation, we go from \( y = f(x)\) to \( y = a f(x)\). Because the constant \(a\) is outside the function, the \(x\)-coordinate of any point on the curve has no role in the dilation whatsoever. (Which is to be expected - it is a vertical dilation after all.)
Furthermore, the \(y\)-coordinate is literally multiplied by a factor of \(a\). For example, if \(y = f(x)\) passed through the point \((2,3)\), then \(y=2f(x)\) will literally pass through the point \((2,6)\). So there are no surprises there - the scale factor is definitely \(a\).
________________________________________________________
When it comes to horizontal dilation, we instead go from \(y=f(x)\) to \(y=f(bx)\). The constant \(b\) being inside the function changes things in a less straightforward way.
Consider a physical example, say \( y =x^3\) as you started with. Let's take a random point that lies on this curve, say, \( (2,8)\).
Now we dilate it to \(y = (2x)^3\). If we now plug the same \(x\)-coordinate in, i.e. \(x=2\), we now obtain \(y = (2\times 2)^3 = 64\). So the point \( (2,64)\) lies on this dilated curve.
________________________________________________________
But the point is, this information is totally useless, with horizontal dilation.
For a vertical dilation, we hold a fixed value of \(x\), and observe by what scale factor \(y\) changes. For a horizontal dilation, we instead hold a fixed value of \(y\), and observe by what scale factor \(x\) changes.
So in the above example, what's really of interest is what value of \(x\) corresponds back to \(y=8\). Not other way around!
Of course, this can be done by solving the equation. Alternatively, the intuition is the following. To make the value of \(y\), \(8\) again, we must adjust whatever is inside the function, to ultimately equate back to 2. That is, instead of setting \(x=2\), we must now set \(\boxed{2x=2}\).
This, gives \(x=1\). Which is of course, half of 2, and hence the dilation factor is instead by a half.
________________________________________________________
The general case: Now consider any curve \(y = f(x)\), and a corresponding dilation \( y = f(bx) \). Suppose that the point \( (x_1, f(x_1))\) lies on the original curve.
We now want a corresponding \(x\)-coordinate on the curve \( y = f(bx)\), that has \(y\)-coordinate \( f(x_1)\). Substituting it in, this would just give us
\[ f(bx) = f(x_1). \]
Of course, we can't exactly 'cancel out' the \(f\)'s just like that. But in the context of dilations, the solution that's of interest, is indeed
\[ bx = x_1. \]
Now solving for \(x\):
\[ x = \frac{x_1}{b}. \]
Hence, the point \( \left( \frac{x_1}{b}, f(x_1)\right) \) is what lies on the dilated curve \(y=f(bx)\), demonstrating the dilation factor by \( \frac1b\).
So in my opinion, the reason why this is less intuitive is that the vertical dilation actually requires some kind of backwards thinking. It's almost as though I'm trying to 'undo' a multiplication effect, instead of impose a new one.