I suppose we've both had different experiences. Here in Australia I had to give away two perfectly good HP printers (and it was quite difficult even to get people to take them) because a replacement ink tank cost more than the printer did. I was paying $40 for a generic ink tank (original HP tanks were $60), and it was only 13ml. With my Canon, the 28ml ink tank costs only $4. I have also been extremely impressed by the print quality and extra features, which were far better than my old HP.
That's not to say that I feel that Canon is necessarily the best, as I'm quite certain that all the manufacturers have improved their printers over the last few years, but I would recommend that you check into the ink costs before you buy a printer. It is a sad fact that, at least in Australia, all of the major printer manufacturers actually make more money off ink sales than off printer sales, and even one replacement ink tank can sometimes cost more than a budget printer.