Call me greedy, I call it being a realist.
If I can get the same or comparable item cheaper from another source I am going to get it.
It's all well and good to say "support local businesses" but really they aren't supporting me or my hobby, while they may chat to you and may give you the sense of security it's nothing more than a sales tactic. At the end of the day they are there to make a profit.
I always thought a lot of pet stores had their practices backwards. Marking single items up by as much as 150% on the wholesale price. Too me it would make more sense to sell 2 of those items with only 70% mark up on each, both the items are more likely to sell in a shorter space of time and you still end up with the same profit except it's spread across 2 units.
A perfect example is: One of my local shop fronts has had the same Habistat thermostat on display behind the counter for almost 2 years, I enquired about the price and found that I could get it $65 cheaper online. Now wouldn't it make more sense to lower the mark up to move this item rather than having it literally sitting there collecting dust and taking up product space?
That $65 saving that I got from buying online could have gone towards a new snake hook, some heat cords, materials for a rack or enclosure or even just treated the family to a day at the movies.
In the end shops do what is best for themselves and their bank balance, I do the same.