This is true. It's a result of poor management, as you said. Either a lack of incentives or a lack of skill.
If someone leaving represents a substantial risk, then a) that role should be derisked, and b) that individual should be recognized via whatever process the company has (leveling, etc) to keep them on board.