Since I first posted this yesterday I've run into this problem several more times with itineraries I was able to price out on ITA. I'd find something in S (or whatever), call united, and it would price out higher due to "no availability". Using KVS or united.com, I would see the S availability in front of me. I could go back to ITA, and even hours later it would still price out fine in S.
Here's what I'm wondering: Does ITA marry segments in a different way than United? Is this why I keep getting these tantalizingly low prices that never are bookable?