I tried your cap and it doesn't run the collision event. It did trigger in my setup, so I thought about it and this is what I've come up with.
If an object has the solid attribute than the platform object will never collide with it but stop right before the collision.
That's why it worked with the mouse behavior, I simply moved the solid object across that invisible border and the collision took place.
I'm not sure, how exactly you want your platformer to behave, but if it is simply a matter of "solid if floor, destroyable if ceiling", you could, for example, use this event in your example cap:
+ Sprite2: overlaps Sprite : offset (0,-1)
-> Sprite: Destroy
This will destroy the sprite only if Sprite2 overlaps with 1 pixel offset above (1 pixel offset is exactly what is missing, when the platform behavior stops the sprite because of a "solid" obstacle)
EDIT: *sigh* why is ROJO always beating me to it <img src="smileys/smiley36.gif" border="0" align="middle" />