I was more thinking of allowing a "one requester, multiple providers" scenario. In this case, the train would not need any control over what is loaded, that logic can remain in the station.
Example: A requester needs 2k iron ore and 1k copper ore and has the flag "mixed deliveries" (or similar) set. LTN sees 1 station for each required item, and thus sends a single train to fetch both. The train would drive to the first of the two providers. The provider's station would read the train's request, and load the requested items. Once the loading is done, the train can proceed to the next provider station to get the second part of the request.
The complexity of dealing with loading and unloading would remain in the station. If done properly, you could send trains on their way with a shopping list and the train would fetch everything that is needed in one go.
As long as the "one requester, one provider" rule is in place, this does not work at all, unless there is one station that provides all of the items required by a requester station.