The example of going out to dinner and then catching a movie is a good one. In a mid to large sized metropolitan area that is an expenditure of $40 - $100 (depending) and that can represent anywhere from .1% to 10% of a person's take home pay. So people gravitate to socializing with folks who have the same sort of budget for recreational expenses.
And it can get even weirder when you're wildly different in available resources. Consider the following illustrative example
Bob is a very high net worth individual, he owns an interest in a Gulfstream jet. While folks are hanging out they hear about a restaurant in Santa Fe (over 1,000 miles away) that is really great. Bob thinks it would be a great place to go for dinner. So he invites folks to dinner, when they show up everyone gets on the plane and flys to Santa Fe and eats at this restaurant which has been reserved (entirely) for this dinner.
Bob is trying to be friendly and help everyone share the experience of a restaurant they were just talking about. Except that everyone on the plane that wasn't extremely wealthy felt really weird about the whole experience. (surreal might be better).
So its easy to be friends with Bob, he's a nice guy, but it is hard to "hang out" with Bob as his idea of a reasonable idea of what to do next, can sometimes collide with your idea of reality.
That goes all the way down to things like skiing (fun, but expensive to do for the day).
To avoid that you need communities of people with similar resource levels, and yes this means that things like the 1st generation outreach program mentioned in the article will collect all of the 'poor people' together, but it gives them a social structure to start from. And if they mix with the the 'not quite so poor' people they can start to move through the variations in strata. Once they graduate they are very likely to be at least part of the "middle" and their kids the "upper middle".