@Kyle115I would recommend you use ABB for this. Thing is, you have a conversation, they take a dislike to your place and their review ends up being less than positive. I might be being pessimistic, but nobody likes being told off and on this platform, the guest can voice that in what they say about you after their stay.
If they've broken your house rules, they know they will get a poor review from you. Nothing to lose for them.
Get ABB to cancel them, then there can be no review left. Let ABB deal with the refund. It may be cheaper than the cleaning cost if they do smoke inside.