Probably the main objection is that it hides the "real" technique behind a library, but then don't most low-level functions do the same thing? For example, delay() itself. (OK a function rather than a library, but there are time you don't really need to know the low-level detail).
Very nice implementation Nick. I would not hesitate to recommend it's usage. It would be best if a beginner at least tried to study the .cpp code to understand proper usage of millis() and how and why to properly subtract the interval amount, before using this library, but either way it sure might help in the fight against the nasty delay() function.