With the exceptions of periods in the 70s and 80s where multiple races were in the US, as well as the Canadian GP, there has been two or fewer races in North America for at least the last 20 years. If your going to want fandom to build up in a country, you need consistency, which F1 hasn't provided.
USGP 2005 in Indianapolis is in the top 10 for the worst F1 races of all times. To say that what is lauded as "the pinnacle of motorsport," cannot figure out how to go around a long banked corner without bursting it's tires, when "low tech" American cars have been doing it for almost 100 years, is pathetic. This leads me to point #3.
We have already have had a series of great venues for racing. We've produced more drivers for F1 then any other countries save the UK. They've disrespected Indy. They've had a wildly successful event at Watkin's Glen. Even Long Beach was a good venue. They've left both. However, F1 has continually shown to both American racers and American fans that it's better for American drivers to support domestic racing series because F1 has repeated mistreated American fans and racers.
Either on the engineering end, or on the driving end. Reasons discussed above. American domestic series are lucrative enough to where drivers will not look elsewhere. I think Tony Stewart, Jeff Gordan and Jimmy Johnson could have had competitive F1 careers. Also, F1 politics are a topic onto itself, where top tier drivers leave F1 for other disciplines. Dario Francitti (sp) is an example of that.
Of the current drivers, I really think only two have the public charisma to be popular here. Kimi Raikkonen and Lewis Hamilton don't really read off a script, and that would play well here. Vettel with a cowboy hat is just kind of insulting it's so bland.... F1 prior to the takeover of Herr Schumacher (It's not his fault, he was interesting) had drivers who where more interesting. Senna, Prost, Piquet, and Mansall alone have twice the charisma of the entire field themselves.
These are just my thoughts, be sure to add your own in the comments section.