I also would like to know if there is an easier way than using Excel/Power Automate - I googled a bit and thought I found the answer with "use a flow to perform a changeset request in Dataverse" but I was wrong. The concept is what I want for Dataflow though.
Same as you, I had to think of a long-winded way - which was;
1. Create an excel spreadsheet saved in Sharepoint that records the refresh history of dataflow (make the data into a "table")
2. Create a flow that would add the refresh history of the dataflows
2. In excel, have a formula that does the count (based off name of dataflows & conditions for dataflow like 'success' or refresh type = 'ViaApi' so that it won't kick it off if someone manual refreshes one dataflow)
3. Create a flow based on recurrence (ie., check every 15minutes or depending on how long your flow takes to finish - should give you an estimate of when you should trigger the time) that will check the last row in the spreadsheet (so that your flow isn't doing a for each loop) and if that formula is 4 (say for example there's four dataflows) then trigger the refresh on dataset. Then this last step (which I haven't quite fixed) is to ensure your formula updates to 5 so that if 15mins later the count is still 4 you don't want to refresh dataset again....OR you could have an action that deletes those rows so that it won't trigger the dataset refresh again.
In the whole solution above I have to make sure to convert the timestamps to local time (so that dataflows refresh only happens on weekdays etc.).
There must be a better solution out there right???