You can indeed using an API like openGL or DirectX. The reason most don't is because the API is the barebone interface for graphics and the like, so there is not much additional functionality.
I've been writing a graphics engine in OpenGL. It's great, I like it alot more than DirectX, which I dabbled in before choosing openGL. If you are interested in OpenGL over DirectX, here is
Nehe's Tutorials.
I would advise against using the API over an SDK if you plan on doing anything extensive. Here is a link to the thread I was using to discuss my engine, may help, may not, but it's there if you want it;
Designing a Rendering Engine
Cheers mate, good luck!
Tux is my guildmaster.