Thanks for the reply, MaverickMongoose.
You may also explore the Attribute Manager> Mode> Scene> Simulation> Simulation> Steps.
Think of a sphere on your table, a real metal sphere, and a real table, how often would you estimate the sphere tests if the table provides resistance to go through? [∞?]
Since we most likely do not have a supercomputer farm running our simulation, the forces an object has to collide with another are tested a few times, but surely not infinitely. So when the motion of an object is fast, it might test for no collision, but when the next test happens, it is already beyond the collision point. Well, that is also not that simple, as a sphere collides with points above the collision surface halfway through. Therefore, the sampling or steps need to be higher to prevent this from happening, as it can become stuck partially inside an object.
If there is a high velocity, it appears to be messing with gravity, but it is reaching only a speed that is too fast for the steps to be successful in determining a collision. The search radius is a helpful feature, providing an early warning (simplified).
I avoid mentioning the substep option early, as it changes the course of the outcome.
Cheers