A couple more things that I think help the catholics more than other religions get peope back...
Religion really is all along about joining and community, and the catholics are very good about some things. They're very well-organized and tend to be in the forefront of social justice and helping the poor. That wins them a lot of followers. Another is that they do actually do things for people, which while I know is only marketing, still it's more than most churches do.
If an old guy from a fundie church falls down his stairs and breaks his leg, well, if he can make it to church, everybody says they'll pray for him. Maybe they'll even go pick him up and carry him to church. But that's pretty much it. Here the Knights of Columbus go fix up his house so he can get around and the old ladies in the church auxiliary bring him casseroles. Fish, though, on Friday---some things never change!
Anyway, that cradle to grave thing works well, especially as people get closer to the grave. Remember, one of the catholic's huge revenue streams are the money people leave to it when they die, especially if they don't have kids. The church has made out like a bandit over the years with that!
The catholic church is so completely outside what's normal in the developed world in terms of brith control, etc., that for generations those rules have only been a nod and a wink anyway---they're almost considered not to be taken seriously. It's too bad, since their stand is so bad for the developing world and has a huge effect on effective legislation in catholic-dominated countries. But I know a lot of good, church-going catholics and they take the pill and even have abortions just as fast as anybody else. In my mother's day they had to tell the priest they were taking the pill for 'medical' reasons. Not having a baby is pretty medical. People of my generation would laugh at even the idea of talking to a priest about it.