To test, I have set a text variable in onStart and displayed that in the PCF. This was displayed correctly on the first time opening the screen with the PCF Component. The collection that is filled with data from a flow still did not load, however, i did find a workaround. It's a dirty one though..
I created a copy of the screen with the PCF and added two timers to it. I have set a boolean PCFLoaded to false in onStart to use in the timers.
The first screen has this onTimerEnd function: If(PCFLoaded; true; Navigate(PCFScreen2; ScreenTransition.None)).
And on the second screen's timer: If(PCFLoaded; true; Set(PCFLoaded; true);; Navigate(PCFScreen1; ScreenTransition.None))
Both timers start automatically, repeat and have a duration of 100 (ms).
As I said, it is a dirty fix, but at least the data does load when you open the PCF screen the first time.