Most hosts would give you your money back unless :
You abused their network/hardware
You bought an internal/non refundable license from them . Eg. like cPanel license for their VPS etc, where they would refund you for the service, but not the cPanel license fee ( ~13 USD )
Moneyback policy is provided by almost every host make sure that if any customer is not satisfied by their service, then customer is not deprived. Hence moneyback is provided pertaining to the rules and regulations of the hosting company rules.
My opinion is its difficult for providers especially if they are resellers themselves could cost them a lot of to purchase your own services. But not giving a refund could give the company such bad press and make loads of people put off them. So most of the time its easier to just give a refund.