Of course, "birds of a feather flock together." It's not just an adage or an idiomatic expression, it's a statement that tells what really happens in reality. Concerning the "opposite attraction," it happens. But I believe it only happens when one party has something to gain, or probably when they both have something to gain from each other even though their life styles are different.
For example, an unserious student might be friends with a very serious student because of the knowledge the unserious student wants to gain, or a pastor marrying a prostitute because of some reason.
Life could be ironic sometimes.