What is the point in designing your own car (e.g. to take part in an F1 race) if there are existing car manufacturers who will sell you cars that already work?
I looked over some other answers here and in the proposed dupe questions and one point not really being championed is that creating your own system affords you more technical (and, as a consequence, creative) control.
The car analogy falls well short because cars are all hardware plus the user, here we're talking about middleware software. Which is just a part of the software. Which usually has to accommodate combinatorial variations of hardware, as well as completely unskilled users.
Anyway, the point is that ABC game engine, no matter how attractive its feature set, was not designed with you in mind. For example, an Unreal engine was designed with an Unreal Tournament game in mind. Unless it is open source, usually you will have no idea how it works.
Of course that may be just fine and dandy, depends on what you're setting out to do.
BTW this is not any sort of a jab at the Unreal engine (the latest iteration of which these days can rightfully be said to be unreal. It's freaking beautiful). Modern engines like Unreal and Unity (and many others) are making huge leaps and bounds toward supporting anything you could realistically expect to build.
The fundamental idea for my answer remains the same and I expect this to be true for a while until paradigms start to shift in game development and computer programming. At the end of the day, writing your own game engine allows you to (in a simple straightforward way) generate machine code which is is not littered with tons of dynamic branches to support dynamic, general capabilities. Call it bloat or call it a feature, this is just how it works.
I envision software middleware in the distant future that has deep compiler integration and we will continue to be able to enhance software optimization capabilities while retaining ease of use for content artists and developers.