I agree that, in general, you don't want to maintain a fork because that's a lot of work (or more work than contributing the changes so they're included and maintained upstream), but I don't like the idea of losing the benefits of open source customizability because upstream don't want your changes (sometimes it happens, for different reasons).
So yes: avoid forking when possible, but don't be afraid of maintaining a fork if the benefits are worth the effort.
So yes: avoid forking when possible, but don't be afraid of maintaining a fork if the benefits are worth the effort.