Keep in mind - MICROSOFT isn't the one writing drivers for the devices in the computers Windows is installed on. That task largely falls on the manufacturer of the component. Microsoft is then not the one responsible for deciding when to stop supporting the device but the device manufacturer makes that decision. In the case of my dad's computer, nVidia stopped writing drivers for the video card, and paying to certify them with Microsoft, it was in no way Microsoft's fault that we couldn't get drivers for his video card.
Another thing to consider, other than RAM and storage, laptops have largely been "disposable" in that individual components are difficult to replace due to the nature of the parts inside each laptop being designed for THAT laptop.
I put this in EVERY thread like this that I respond to. Companies need to make a financial decision to cut off support for older devices. Supporting older devices costs money, they need to employ someone to write the drivers to support those old devices. Apple knows exactly how many people are using those old computers, and what OS they're using on those devices. If it's determined there are a small number of people using computers of a certain age and some of those people are not even using the current OS then there's a good chance they will not update to the NEXT OS and it's not worth the cost to pay someone to write the support software for those devices.
Take the 2007 MacBooks, if there are still 10,000 people using them (just throwing a number out as an example, the number could be higher but is it really?) and only 10% of those that are left ever upgraded after Leopard, does it really make sense financially for Apple to support the 2007 Macbook for the 1,000 people that might actually want it? Especially when you consider it could cost as much as $1,000 (again, guessing, the development cost could be even higher) PER MAC at that number to write that code. I don't know the exact numbers, my guesses could be low or high, but the point still stands, it could be VERY expensive on a per-device basis to keep those older computers supported in new versions of the OS. At some point, the cost/benefit numbers point to dropping support for the old devices, that point appears to have come for those older MacBooks.