Instinct is the cause of sexuality. Socialization causes you to put a label on it. If you are attracted to one sex or the other, it's because that's what you're attracted to. Smells, feels, comfort in interaction, etc. sway one's attraction. So 'heterosexuality' in general, is caused by an individual's predaliction for sexual interaction as re-enforced by their history. Likewise with homosexuality. Different people are shaped differently in all ways, their minds, tastes, etc... so their experiences as they interact with their predalictions guide them to the act in a manner that gratifies them (even if their gratification is "i don't want sexual gratification').