A couple of issues occur to me. If your business model is setup where you generally get the word out by word of mouth, or networking its unlikely that anything remotely like this will ever happen to you. But lets say you put your name on a building, and adverstise your services. Once you do that you become in effect a public accomodation, you serve the paying public. Now because you have limited resources, namely time, you still have some right to limit who you serve. What you cant do is discriminate against members of the public based on religion, gender, race, or sexual preference. As for doubting whether someone actually said "you people disgust me" perhaps not, but all the articles I've read on this indicate the photographer refused to do the job based on the clients being gay. So regardless of the verbage, the idea was communicated.
To your specifics. You probably cant be sued for refusing a public school kid, unless he is of a protected minority and you made the reason clear. The rest comes down to style, nobody can sue you to take a photo in a style that you dont agree with.