Hi John,
It is possible to add different rates to the same accommodation types like Refundable and Non Refundable with different descriptions where you can describe the conditions. The guest will be able to select the needed rate on the checkout page.
You will also need to disable the default cancellation option (if it is enabled) via plugin settings so as not to let the guests cancel the reservation at any time. Then you may add a custom contact form for the guest to contact you and request a refund. You as an admin will decide whether you allow the refund according to the selected rate, etc.