This is stellar advice for all services, not just those associated with SQL Server. It's very good advice to create a custom user account for any service that you run (beyond those that come with the operating system itself). Grant only the permissions that the service needs to its user account, and don't run any other services using that same user account, (unless it's absolutely necessary; well designed services shouldn't require use of the same user account across services).
Let's say for example that an attacker discovers a buffer overrun vulnerability in service X. If he's able to exploit that to run arbitrary code in service X, he's now got control of the user account under which X is running. And if he knows anything about Windows system programming, he'll be able to quickly gain access to any other services that are running under that same account. He'll be able to access any network resources that those services can access as well, and perhaps start attacking other machines from there.
Another problem with using the same account for multiple services is that it has a tendency to gather privilege. It's like a snowball: each additional service that runs under the user account requires a different set of privileges, so you find yourself having to add more and more privilege to that one user account. Not to mention that at the same time you're adding more and more attack surface area (more services) that an attacker can go after. You're simultaneously providing a juicier target and weakening your defenses at the same time.
HTH