The terms non-stop and direct flights should not be used interchangeably. A non-stop flight is a direct flight but a direct flight is not always a non-stop flight. It might seem trivial but the difference between the two can be huge.
A non-stop flight is exactly what it sounds like - a flight that goes from point A to point B without any planned stops.
A direct flight is not what it sounds like - it is a flight or series of flights that operate under a single flight number. It could be a non-stop. But it could also be a flight that has a number of planned stops and/or aircraft changes along the way.
For example, United flight 966 is a direct flight from Los Angeles (LAX) to Rome (FCO). But it is not a non-stop. First United 966 goes from LAX to IAD (Washington Dulles) on an Airbus 319. Then there is approximately an hour layover in IAD before a plane change to a Boeing 777 when the flight continues to FCO.