Since each store is privately owned, they can enforce their own set of rules (to a degree). While I am in no way saying what they did is right, because if you were to come into my store with the same product (brand new, unopened, resellable) with your receipt and photo ID.
Personally if I were in the situation (customer), I would not have let them charge me the restocking fee and would have taken it to another store and see what the other stores would say. Remember, valid products being returned are good for any store and not all stores apply the same return policies or have managers who are as strict.
My suggestion since I don't have much authority with this, would have been to take it to another store and see what they could have done. Perhaps talk to a manager at another store and say mention that you are interested in purchasing one but don't know if you would be using it and what their policy would be for a return with the receipt, unopened, resellable condition would be.
Unfortunately once that customer allowed them to charge them for the return, there really is nothing that can be done. Customer relations will state the same as any other store, and that each private store owner can enforce their own returns (especially if it means the product manufacturer won't credit the store and the store owner is to absorb the cost).
In this case, I don't see why a store would normally enforce a restocking fee. It was completely resellable and was not a cost to the store to resell it.
So a customer, who has a return with a receipt is refused for a lame reason, has go from store to store with the item, hoping that they will get a refund from a different store, with different rules. It's a total crap shoot as each store is different.
Thank you CT Manager for clarifying for me, the customer, as how to get a refund at Canadian Tire.