I believe this stuff starts at home. It amazes me the number of people that can't do anything with their hands (mechanically, etc). I started teaching my daughter to wrench on and build stuff when she was about 2. One of my proudest moments was when we were sitting on the floor putting together a shelving unit and she was 3 years old and had a socket wrench in her hands tightening up a nut and bolt. My wife told her that she thought she was tightening it the wrong way and Samantha said "No I'm not mommy, righty tighty lefty loosey". I was beaming! I've already talked with my wife and told her that the kids (both girls btw) will have the option when they are 13 (that I hope they take) for us to go out together and buy them a fixer upper car and we'll work together to rebuild it. If they do that I'll help them pay for it and they'll put in the sweat equity to fix them up. This way they learn to work on their vehicles, will appreciate them more, and even if down the line they go down a path that doesn't have them working on them they'll know what to look out for. My oldest (6 now) started riding motorcycles this year and after riding we work together to get the bike cleaned up, lubed, and checked out for the next ride - teaches her to take care of her stuff. She also loves getting wood kits from HF that you punch out the pieces and make carriages, motorcycles, dinosaurs, etc - they're cheap and we build them together. I truly believe that correcting this situation starts at home.
I'm also going to keep my eyes open for neighborhood kids that I can introduce to the hands on world as well. For you guys that don't have kids that's something that you can do to help as well. Help those local kids learn how to change flat tires on their bikes, etc. It's up to us to make a difference.