1. Google do very well with search advertising because it has intent
2. Facebook advertising is not based on intent
3. Ergo, Facebook advertising sucks
Display advertising is a very, very large part of overall advertising. Display advertising is larger than search advertising online. Further, intent or search based advertising relies on display advertising to generate interest.
95% of every dollar spent on advertising around the world each year is spent on display advertising. It works. It works so well that Google are getting into it to maintain growth (Doubleclick acquisition).
It also scales a lot better since intent inventory can not be easily generated (and funnily depends on display advertising).
It will just take a while for Facebook to figure it out, but i'm sure they will. Too many people spend too much time on Facebook for display advertising there to be ignored. It doesn't have to even be super efficient with the numbers they are hitting.
You're right. Intent is seriously important. People use Google search as a means to get to another source of information regardless of whether their intent is navigational or informational. People on Facebook simply stay on Facebook until they're ready to either get offline or go search google.