Of course, on the DirectX side you have the DirectDraw vs Direct2D mess, not to mention that the APIs are very poorly designed (in my opinion, at least). Doing 2D stuff in OpenGL isn't terrible, but it's certainly not well suited to it. In most cases, something like SDL ends up being easier and rarely too much slower (well, unless you're scaling/rotating...).
I've found that for my particular uses, the hardware acceleration you get with GL makes it worth it for 2D, even if it's perhaps not otherwise as well-suited for that as SDL.
Qt also has a GL drawing engine, which turned out to be a good move on Trolltech's part.
Either that or offer a slightly degraded gaming experience according to what the OpenGL system exposes.
Nobody cares that much if their phone can't show the same tessellation glory their kid's dual-GPU oil-cooled deskside monster can.
And OpenGL has had a standard shader language since v2.0, about 6-7 years ago? You don't have to "build it yourself" except in the sense of having to port DX shaders to a slightly different source language.