Here are the problems with your logic, because there is more than 1.
- You're running under the assumption that more cores = better performance. This is simply not true. As a software developer who writes multi-threaded applications, I can tell you that there is a limit to what more cores can do and it varies from task to task. Not every task can be made to run in parallel and get a benefit from it. I can use 20 threads but that will do me no good if every thread is blocking so often I'm not using more than 1 core worth of resources at once while adding to the overhead of being multi-threaded in the first place.
- Intel isn't putting more cores on their mainstream platform because there is no need for it (see #1). They would rather dedicate more die space for the iGPU so they can take over yet another market from AMD. When push comes to shove, most consumers won't care about a dedicated GPU because Intel will actually have something half decent at the rate they're progressing, even when using bastardized X86 cores for GPU compute which is fricken hysterical IMHO.
- AMD tried adding more cores and it got them nowhere fast (see #1) but, their APUs did in the sense of what the average consumer wants (see #2).
Please explain to me where I'm wrong here.