I mean, if components are set to block each other, there will be no overlap events, even if you check “Generate Overlap Events”. Thick of it as if for the engine, the components that are supposed to block each other, are never overlapping. The engine will try to depenetrate them.
But there no need to depenetrate objects that are supposed to overlap each other.
In short: meshed either depenetrate each other, or overlap. You can’t have both at the same time.
Even if you force them to physically penetrate each other, it will not count as overlap.