Now, we have moving maps that scroll at whatever speed you're driving or moving, and arbitrary, smooth zooming, so you can't just let an algorithm take hold or you get labels popping in and out as the logic decides in real time where to put them. Users will find it distracting and weird, and most designers will say "no way". So you need to add things like debounce and hysteresis. You have to have resolve label conflicts in a way that doesn't always let (for example) POI names always take precedence. You have to determine whether/when to display street numbers vs street names. Do the locals call it I-880 or "Nimitz Freeway"? You have to keep labels right side up at arbitrary map rotations and along twisty road geometry (easy but yet more code). It adds up and requires these fiddly thresholds and scaling factors that are usually hidden from the user.
As someone else pointed out, having sliders and preferences for every little tuning knob is always a no-go with the designers, who want everything to just magically work without configuration. As a programmer, I've always thought that "design minimalism" is cancer, but on the other hand, it provides constraints and makes the problem interesting to solve.
Google Maps already does some flowing, it's just not very good at it once you zoom all the way in.
If you have an important point of interest center-screen, then the lower priority labels flow away, or are priority pruned if overly numerous. This allows users to resolve invisible labels simply by zooming in.
I'm absolutely in agreement on the performance challenges, which are likely the real reason precomputed labels seem to be used on Google Maps.
The real problem here is with label conflicts. Say you have an important point of interest in the center of the screen already. If a road label happens to be placed underneath the point of interest label, it will look like the road is unlabeled.
There are clever ways of moving labels around, but: 1. it has to run in realtime on the client, and 2. it has to look good in motion and in all possible situations you can think of (since you have no control over what the data will end up being). This is why older raster maps often have better labeling than newer vector maps -- you can do a lot of precomputation on the server to make sure the labels look nice.