I've felt the same way when doing non-basic stuff with Angular (over a couple of projects). While a directive is usually more general than equivalent vanilla js/procedural code, this doesn't explain the 10x (In my experience it was probably closer to 5x code and time though).
I've been fortunate enough to use Durandal a fair amount since, and have found that it's probably 1.5x and 1.5x for a binding or custom element, which IMO is fair for the benefits that it brings.