Zipf' Law is a generalization of Benford's (and older if I recall --- think Zipf based his work on Pareto / the Pareto Principle).
Anyway, the whole "River" explanation seemed a bit overly long to me; a comparison closer to home so to speak is with the snaking "rivers" we live at: streets.
So, why are more people living at house numbers beginning with 6 than with 7? Because every street with a no. 7 has a no.6, with a number 70 has a number 60--69, with a number 700 has a number 600--699; but conversely there are some streets that have 60-something numbers (maybe not all!) but stop before reaching 79; and those that do reach 79 may end between 601 and 799. [In the UK the set of 1000+ numbered houses is negligible.] There is more streets that reach the 100s than the 200s, so
A street with houses 1--199 has more than 50% people living in a number starting on 1, about 5% starting on 2, 3, .. 9. A street with houses 1--299 has over 33% in 1.., over 33% in 2.., and the rest equally split over the remaining 7. And so forth... There's more streets ending in the 300s than in the 400s, more ending in the 200s than the 300s, etc.
As with rivers, the causes of street length (and house number density) are myriad unrelated factors, mostly geographical, political, etc... hence Zipf applies.