With the 360 you had to transfer your Live account from the Xbox 1, rendering your Xbox 1 Live stuff dead ... or it would have, without B/C. Halo 2 was the most played Live game even on the 360 in the early days - without it "upgrading" to the 360 would have been a step many early adopters would have thought twice about.
Halo is a serious fringe case, being a popular online title still active when XB360 was release. Had Halo 3 been out on 360's release, H2 wouldn't have had a look in. Had an alternative next-gen online game with the same pulling power been released, Halo 2 players would have moved on (as they have I suppose with COD and other Halo titles). Had H2 not worked on 360, those 360 buyers would have just waited a while.
Steam wouldn't fare so well if you had to start your game collection from scratch every time you built a new PC
PC is different as it's an evolutionary platform built on a hardware abstraction layer. But even then, old software and devices have stopped working and buyers of new computers have had to face replacing their old software and hardware.
BC is nice, don't get me wrong, and it helps with the transition. But if you are tying your new hardware design to legacy hardware, you are tying a ball-and-chain around your engineers. The net fiscal gain is, IMO, way, way less than the potential costs in choosing a less-than-ideal hardware to accommodate BC. PS3, for example, needed costly BC hardware. And that was a good call - if Sony had stuck a next-gen GS in there instead of RSX, PS3 would have been a dire architecture! MS didn't design any hardware BC as far as we know (costly licensing issues), but thanks to XB running on a hardware abstraction layer in the main, MS were able to port titles and offer a degree of BC. Had they stuck with full BC, they'd have had to buy an x86 processor at no doubt considerably higher cost than Xenon, and gone with an nVidia without unified shaders or licensed the necessaries. If Nintendo want to keep GC and Wii BC, they'll be utterly gimping their graphics, or including redundant hardware that, once the NES6 game library has fleshed out, will not be used. That's wasted money.
Seeing your old games as not working on new hardware is something I think everyone can take in their stride. And things like XNA titles will no doubt be portable anyway without having to design that explicitly in the hardware. If I were in charge of a new console engineering project, I'd tell my engineers to ignore previous hardwares completely, and design the very best bang-for-buck with modern hardware that they can.