@Philip252People are allowed to review you even if they don't stay, provided they don't say anything untrue in their review. This to ensure that people can still review hosts or guests if they cancel for a valid reason, i.e. the space not being as advertized, or the guest having too many people when they arrive and being denied entrance to the listing.
Personally, although I think her review is unfair (she should have read your listing rather than making assumptions), I would call Airbnb and ask them to remove your response to her. Although she gave you three stars, the written portion was positive. Your response makes you seem very defensive, and will do you no favours with future potential guests. Remember that your responses aren't to the guest that's already stayed with you: they're for future guests who are considering staying with you. Were it not for your response, no one would have known that she gave you less than five stars.