I’m a former fundamentalist, turned liberal Quaker-ish, now Catholic. My opinion at all points has been well-summed up by a paragraph from the APA’s website:
There is no consensus among scientists about the exact reasons that an individual develops a heterosexual, bisexual, gay, or lesbian orientation. Although much research has examined the possible genetic, hormonal, developmental, social, and cultural influences on sexual orientation, no findings have emerged that permit scientists to conclude that sexual orientation is determined by any particular factor or factors. Many think that nature and nurture both play complex roles; most people experience little or no sense of choice about their sexual orientation.
Two facts are undeniable: most self-identified homosexuals fervently claim that no matter how hard they try, they cannot cease feeling same-sex attractions. This includes a number of people well-versed in Catholic morals of sexuality. This can be seen in a significant number of Catholic homosexuals who remain celibate forever. If they could become straight, surely, surely they would do so, rather than remain celibate forever. And the fact that they remain celibate despite what must be overwhelming urges speaks to their deep understanding of Catholic morality, so we cannot attribute their feelings to been lost in sin.
The second undeniable fact is that some people, albeit far less than the above group, claim to have “switched” preferences, or can satisfactorily ignore one preference over another. For such people, homosexuality is pretty clearly some manner of choice.
This leaves us to agree with the predominant psychological model today–sexual orientation, by which I mean one’s uncontemplated attractions, occurs on a spectrum from fully heterosexual (I myself have never felt any same-sex attraction) to fully homosexual (people, such as a Catholic friend of mine, who swear to have only felt same sex attractions, no matter how hard they try), and then people in between who are able to exert some control over their feelings.
This all, of course, is completely separate from what is sinful. Have sex outside of a marriage between a man and a woman is a sin, period. I make a choice to cheat on my wife, in the same way as a homosexual makes a choice to have sex with another man. Each choice is sinful in much the same way. And while it is likely easier for me to avoid my sin than a homosexual his, that is simply the cross we have to bear. Just as saying homosexuality is a sinful choice ignores a broad base of evidence, saying that because it is not chosen, giving in to same-sex attraction it must not be a sin, ignores a broad base of morality. Frankly, I think the CCC has settled this issue quite well.