If I was a better programmer, I'd be willing to put the work into it. But I just don't understand things enough to do it

From what I've been reading, though, OpenGL "should" be fairly straight forward in implementing. But everything I've tried in my other project comes out all wrong. Not sure how to type this out, but everything I tried to scale OpenGL output ends up with the image the same size, just bands of background added in... I really should have taken some screen shots to show you.... I'll try with text...
Original image...
xxxxxxx
xxxxxxx
xxxxxxx
After scaling
x x x x x x x
x x x x x x x
x x x x x x x
Notice the spaces added in? The individual "pixels" stay the same (the x's), but background (the spaces,) are added in to produce the new size. If the size is doubled, it adds in single background pixels. If tripled, it adds them in pairs, etc... When partials are needed, then every few pixels will have an "extra" background pixel added in. I eventually gave up (on my other project,) and just upgraded to SDL2 and used it's HW rendering routine for the fine tuning with straight pixel multiplication for the integer scaling. Crude and time consuming, but it gets the job done.