So when physics don't do what I want, I make new physics-only meshes.
Okay, so first thing I did here was to look at the collider funnel. The solidify modifier on this was so thin that I'm pretty sure it was confusing the physics, and any softbody verts that made it through the funnel could never recover. So I just got rid of the solidify modifier.
After that, your vertex normals were backwards of what you wanted: we want the balls to collide with the top of the funnel, and if they blink through, we want them to get pushed back to the top of the funnel. So I recalculated normals inside on the funnel mesh. This pic is shown with "face orientation" enabled in the overlays.
After that, I still wasn't perfectly happy with the collision-- so I made a new collider. I recommend always thinking of your physics world as separate from your rendering world. The wireframe mesh is a slight duplicate of the funnel, raised up a little, with a slight lip created so the colliders don't get hung up on the edge of the collider. Then I can remove the collision on the original mesh, and set the new collider not to display in renders (and set it to a wireframe viewport display so I know it's just for physics.)
Few other things: You don't need rigid body on anything; soft body doesn't pay attention to that, only to collision. You should probably apply scale on your floor.