Yeah, that's not how it works. I think the best way to explain it would be to compare "On collision" and "Object is overlapping".
With "Object is overlapping", when the two objects specified are overlapping eachother, the event will evaluate to true until they stop overlapping. On the other hand, with "On collision", if the two objects are overlapping the event will only evaluate true the first time they are detected to be overlapping. After this, the event will return false until the two objects are no longer overlapping, at which point they can overlap again and the event can return true.
So, essentially, the "On collision" action is an "Object is overlapping" condition with a "Trigger once condition".
I hope I got the point across well enough. Hope that helps.