@Jo418 Yet another "Guest didn't bother to read the listing info". Sigh.
Absolutely don't cancel. It's up to the guest to cancel- they own this issue, not you. Just tell them that it was up to them to read the listing info where the dog is clearly mentioned, and that no, you aren't going to lock the dog up. That if they are uncomfortable with it, they can cancel their reservation. Don't refund them- they will get a refund anyway from Airbnb according to your cancellation policy, and it's likely that Airbnb won't even honor your policy and will refund them in full. Just tell them that Airbnb handles all the refunds and that as a host, you don't even get paid until 24 hours after guests check in.