I had a passion for programming since I was 10 years old and as other posters have said, that makes all the difference. I have been working independently in the industry for only a year now - my work consists of a wide variety of programming: C++ development, web programming work (PHP / MySQL), and other programming related work. At this time I do not have a formal education and I was never even asked for it throughout my relatively short career - when you independently do contract work, credentials become irrelevant. Starting a year ago doing a lot of monkey programming to increase my actual programming skills was a great way to learn the new technologies and gain practical experience, the pay was at that time relatively low ($10-$20 per hour). It has then grown into more interesting work, and now I'm getting consistently paid $60 / hour and more.
I am not implying that this path is easy to take: there are countless late nights, constant weekend work, and it's at times interfering with my studies. MY point is that it took some effort, but my passion for programming did the rest. I am constantly developing my own side projects to gain passive income, reading marketing books, and improving my investment skills. I am proud to say that I accomplished all that between the ages 16-18 - so my advice for the original poster would be to take action and start a business. I am currently 18, therefore in September I will be going into a top Canadian University for Computer Science. I decided to try getting a formal education - I am not going to University to become employable, but merely to gain some new knowledge and take many business courses. Therefore working in North America within the CS industry can definitely be done - but you have to become the one outsourcing the work or hiring local workers.
Once you've done this, the whole idea of a "job" just seems... well... stupid... I completely agree with your take on this - currently all my peers are being brainwashed to "get an education and a safe secure job". When I hear that line, especially combined with job stability - I merely laugh and take note of who could be employable for a minimum secure wage. If you want to live out "The American Dream" - then just do what other great people did: work hard and learn skills in all areas (accounting, investments, programming, selling, marketing).