Not infrequently I see wide variations in prices between ITA and OTAs or airlines' sites.
I had figured it was to do with the timing of fare filings and availabilities. That is, ITA was finding fares the booking sites either no longer had or had not yet received.
Thus, when keen on a specific fare or destination, I'd search at different times throughout the day in the event the second assumed possibility were true.
Clearly, just my $.02