This actually has happened to me. I was on a US 170 from MCI to PHL, when shortly after take-off, the capt. came on and told us that the lavs were "full", and that we would have a vote. We could either continue on to PHL and hold it in, or we could divert to IND where we would have it fixed. Everybody voted to continue, and continue we did.
I also know of another story, this time on a 3 hour DCA-MCI CRJ flight on US. The lav broke mid-flight, and as always, a lady had an "emergency". The capt., a furloughed US mainline pilot, explained that they would divert so she could go. However, she didn't want to cause such a delay, so she painfully held it in until they landed at MCI.
My dad knew this guy, and talked to him about it. What he told him is exactly what should have been done. There is NO need to divert. Instead of wasting thousands and thousands of dollars, let the woman #### in the toilet and just don't flush it. When you land in MCI, have somebody clean it out. Sure it won't be fun, but why cause such a big delay and waste so much money just to avoid having a turd sitting in the john for half the flight?
I would explain to the passengers that the only lav wasn't working, and that instead of taking a big delay with half the plane missing their connections, I would fly the flight on schedule, and that everybody should go before the flight. If anybody knows they wouldn't be able to hold it, the airline will put them on a later flight free of charge. And in case an "emergency" comes up mid-flight, well, there will be a turd or some piss in the toilet until we land, and everybody would just deal with it.