I've been migrating a facebook app to iframe from FBML so I'll be posting about that process a bit here. I was figuratively beating my head against a wall trying to determine why some of my xfbml wasn't working. After much ado I came across this thread which posed the question "I can connect to XFBML successfully if I create a login button, that when clicked on will connect to facebook connect and log on. However why do I actually need to click on this login button?" This was exactly my problem though apparently I couldn't phrase my question appropriately for google.
So the answer is, if it doesn't seem like your xfbml or your serverfbml code is working properly (but it is sorta working) you probably don't have your facebook connect app settings setup correctly. Particularly the "base domain" and/or connect url.
I know you're not creating a facebook connect site at all so you'd think these settings were irrelevant. You, like me, would be wrong.