Back in the WP7-Mango days it was pretty obvious why the OS wasn't successful: it was missing many features and the app gap was massive. Nowadays, most of the important features are there (Digital Assistant, Folders, Notification Centre...) and the app gap is lessening. Yes the app gap still exists, anyone denying this is a fool but because many official apps are now available I would say most people could carry a WP as their daily driver. So why don't they? The obvious answer for me is hardware. Sure Nokia has released some great phones over the last 2 years but let's be honest, they are all rehashed designs, improved iterations of the Lumia 800. I can already hear the screams about Apple and Samsung doing the exact same thing but the thing is Apple is in a world of its own so you can't really compare to them. They could sell ?50 toothpicks and get away with it. As for Samsung, sure they keep the same design but every new phone comes with its own suit of new (albeit mostly useless) features that look great on TV or at the phone shop. But more importantly, from a user's perspective, if you don't like the Galaxy S5 design you can go with the HTC One, Xperia Z or LG G3. If you don't like the Lumia design, what are you left with? Well, you're left with checking out the android line-up.
Some will blame the employees in the aforementioned phone shops but really can you blame them? On one end you could present your customer with 4-5 state of the art phones or on the other end you could convince them to go with that Nokia phone that's mostly the same as that other one but takes better pictures unless they want that old HTC/Samsung phone that may or may not be still supported. What would you do?
I'm not even going to enter the mess that is the American carrier business but the bottom line is this: more than additional official apps, Windows Phone needs to bring back Samsung and LG so they release truly modern and feature packed high phones like they are on android. They also need to get Sony on board and HTC committed beyond the HTC One W8. Great hardware sells and great sales attract developers. It's up to Microsoft to sell that message to other OEMs.