If you approved a cancellation, you will be penalized in a variety of ways. Sometimes the $50 fee kicks in. Always, you will have those dates blocked for future bookings, and also you will be ineligible to be superhost for one year from the cancellation.
It is tricky (and in my opinion unfair due to misleading wording), but if the guest wants to cancel, you do not need to approve anything. They can cancel independently on their own, and then you will not be penalized in the future. Next time a guest wants to cancel, just send them a message to do it on their own.
Regarding your strict cancellation policy, the guest knew that at booking time. You do not need to refund the other 50% of the money.