Basically half of flights I've ever booked have had a cancellation. Usually the airline customer service had to rebook a new itinerary for the same purpose, but once in the past year they had to issue a refund because all possible routes went through DFW and they had lightning, which they have all the time.
It's absolutely ridiculous to even suggest that you should be able to take someone's money and not render services. That's a fundamental part of commerce.