The reason why ATC is late in giving descent instructions is because it is doing exactly what is in the flight plan. If the cruising altitude is 39,000 ft and your flight plan is imported from SimBrief, then your flight plan tells ATC to keep you at your cruising altitude until the IAF. ATC instructions are linked directly to the flight plan information.
Is ATC “broken” because it is doing exactly what you are telling it to do? Or are your instructions in the imported flight plan “broken”? MSFS has never said that SimBrief (or any other) flight plans are compatible and can be imported without errors. I don’t think flight plan compatibility is even a Wishlist item. SimBrief (and others) have said their downloads are compatible with MSFS.
The “fix”:
Create the flight plan using the MSFS World Map flight planner. When a flight plan is created in MSFS using SIDs, STARs, and approaches, the flight plan contains the necessary information about the correct waypoint altitude and speed restrictions needed by ATC. (Imported flight plans are missing this information needed by ATC.)
Workaround 1:
The workaround provided by SimBrief is to reselect the arrival and approach using the drop down boxes right after import. MSFS will then insert the correct waypoint information into the flight plan. I do this for every flight plan I import. I then save the flight plan with the MSFS information in case I want to fly it again.
Workaround 2:
Ignore ATC, use an alternative ATC, don’t use ATC at all.
Workaround 3:
Manually enter the flight plan including waypoint restrictions into the FMC. VNAV should provide correct descent instructions to the autopilot. (This workaround is used by PMDG and other developers whose aircraft CANNOT import MSFS created flight plans.)
MSFS is not perfect but is improving. ATC gives me correct vectors when indicated in a SID or STAR. ATC gives correct information to fly a missed approach and return me to the airport usually using the same approach.
Even with a correct flight plan, an aircraft still might be too high during an arrival because many waypoint restrictions are “at or above” a certain altitude. I calculate where my TOD should be to enter the first arrival waypoint altitude. I often ask ATC to descend to an altitude I am comfortable with BEFORE reaching a waypoint.
Finally, before every flight I review each SID, STAR, and approach plate in my flight plan (using SkyVector in the US). If I don’t specify a specific runway or approach in my flight plan, I review all the approaches for the destination before departure.