This is actually just standard QB64 behavior.
When QB64 first starts, it starts up in an emulated SCREEN 0 text screen. This is that black screen that you're seeing initially, before it swaps over to whatever SCREEN_NEWIMAGE you specify.
You might try $SCREEN HIDE at start up, and the switch to_SCREENSHOW after the new image call, but I personally haven't had much luck making it work as expected for me -- but I've never really did much more than play around with those commands... They might've been updated/fixed and work perfectly fine now; I dunno. One thing's for certain: it doesn't hurt to experiment and give it a shot. ;)