I'm writing a framework that I intend to use because I haven't found anything that quite suits me. I was feeling a little guilty about it, but not after reading this. Thanks.
Frameworks written for general use will always be overengineered yet clunky compared to what you could write for your own project, and here's why: if I'm writing a framework and it has a collection of foo, and I know I only ever add(foo), then I don't have to write a delete(foo) and a search(foo) and a count(foo), just the add function. You also don't have to test those other things, or put anything in your model to support them. Frameworks for general consumption, however, do have to have all that stuff because they don't know what subset you'll need. Now imagine that x100 for all the classes in the framework. Even if it doesn't increase the size of your executable, it still increases the cognitive load in terms of having a full understanding of the source. It's the flip side of "not invented here" - i.e. writing your own is not automatically bad, just a trade-off.
I've done the same. Written a framework, used it for one project, and went back to other frameworks because quite frankly the other frameworks were much more advanced and written by those more knowledgeable than I am. However, writing the framework was an excellent learning experience.
Creating your own framework (or your own programming language, or site that does a popular thing) lets you to appreciate, or no, solutions used by other people.
I wrote a framework and I am still using it, because it's more flexible and easier for me to extend than the other ones. That said, I think it was a waste of time from a business perspective. When you want to build a project, take something open source, rock-solid with a community behind it. You can focus on building your project and not fixing bugs in the underlying layer.
Before writing my framework, I had written another one and learned a lot. The second time around, I've made something really powerful and cool, and it really helps me. But it's still not as thoroughly unit-tested and consistent as the ones built by a community. I'm just one guy.