There could be any number of reasons why a certain app exists or doesn't. It could be that you had an original idea that no one has thought of. It could be that others have thought of it, but didn't go for it for any number of reasons (like the reasons you mentioned or others). It could be that some people are developing the app as we speak.
Since it is critical to get those sort of apps first on the market in order to gain market share, I would suggest doing it as soon as possible, since once someone writes the app, they will have an advantage over anyone else that is considering writing a similar app.
As for charging money or not, it is easier to charge money for an app that have 100K downloads then a brand new one. Since there are many millions of facebook users that have an iPhone, it should not be a problem to give away a few copies of the app to get an idea of its popularity.
The fact that there is a facebook app means that you have some very serious competion, but the fact that your app does not have to be limited to just facebook is an advantage. Facebook will not develop an app that supports facebook and other sites, since they want to promote themselves alone. The fact that they will stay away from other sites means that if you offer other sites, you will have an advantage other their app.
The stategy that describes this sort of advantage is called judo strategy, since you are using a disadvantage of a much bigger business (Facebook) against them in a way that doesn't let them compete. Don't get to comfortable though that you have this advantage, because even though they are not likely to develop an app that will compete with you directly, they might decide that they want to block your app somehow or hit you indirectly in some other way. Since facebook is content with letting outside developers make money in their sites (in apps like farmvile) then they will probably not block you, and just let you be.