The interesting thing about the Falcon Heavy is that it has a range of possible modes to launch in.
For maximum payload, if you needed it, and would pay for it, it could expend all three cores to get maximum payload to orbit. Each step along the way to complete recovery eats up margin, in terms of fuel/oxidizer required for recovery.
The goal for SpaceX is to be able to recover all three stages on each launch to minimize costs.
Lowest payload/performance missions will try and land all three cores back in Florida. (Whether LZ-1 gets expanded (per the plans, 4 smaller pads around a middle larger one, only middle larger one appears to be built yet, or if they build more LZ sites.).
Somewhere in between is recover the two side boosters back in Florida, and then land the middle core on an ASDS downrange.
Having said all that, the middle core will always be going higher and faster than the side cores, else it is not doing a very good job as an extra stage.
However, it is not per se the final speed/height of the stage before recovery that causes the extra damage/heating, rather it is how much fuel/oxidizer is set aside to slow it down as it transits back through the atmosphere.
Thus it all depends on the mission, the mass of the payload, the orbit being targeted and how that mission plans out.
Then all remaining fuel can be dedicated to recovery. With enough fuel for recovery it can fly itself back to Florida. With less fuel available, it slows itself down enough for an ASDS landing.
There are three (at least) possible burns that a Falcon core uses during recovery.
First is to kill forward velocity and head back to base. This is minimized on ASDS missions as the ASDS is placed far enough downrange so much of this is not needed.
Second is the reentry burn, designed to slow the stage down, as it hits the thick parts of the atmosphere to minimize friction heating.
Third finally is the landing burn. This is where they let the atmosphere slow the stage down a do their famous hover slam to land.
Each of these burns can be modified, but even more so, by the number of engines. Typically the first burn is a 3 engine burn, with the next two being a single engine burn. But on the Thaicomm-8 launch, which was heavy, but not quite as heavy as SES-9 and not quite as performant an orbit, they apparently used a 1-3-1 engine burn pattern on landing. By using 3 engines they use less fuel, by not suffering gravity losses. (Decelerate faster but closer to target).
They have a lot of room to play around with variables on each mission. Finding all the edge cases that each variable has is going to be a ton of fun to watch. (SES-9 being a great example, as the hole it left in OCISLY was pretty awesome. Even more awesome was how fast they fixed it and caught the next landing stage, a matter of weeks).
SES-9 was a very heavy payload (About heaviest reusable F-9 can handle) and a very high performance orbit. In order to deliver the second stage to an orbit that it could make the target from, it needed to be going faster and higher than usual.
When it came time to land, they ran out of fuel 3 seconds left on the landing burn.