Quick update to this that might help someone.
I'm lucky enough that in my house I have a few different screens/monitors, so after verifying that the Raspbian Buster image I was writing was ok (sha256 hash check) and the green flashing light was doing what it should (with no card solid on for a couple of seconds, then off/on/off/on/off/on/off/on then off, with sdcard in lots of quick green flashes for a couple of minutes, then just the red light, indicating the computer had booted normally and was now just waiting for the user to do something interesting) I was confident that the Pi was working ok, but the screen simply couldn't display what the Pi was telling it to.
So I took the Pi off to a monitor that was reasonably high definition (better than 1080p, so will display higher than 1920 X 1080) and it then worked perfectly.
So to properly solve it I then enabled VNC (using the Raspberry Pi Configuration application in the main menu -> preferences, then go into the Interfaces tab).
I shut down the Pi, moved it to the screen I wanted to use it with, plugged it in and booted it up.
Still a black screen, as expected.
I then used another computer with VNC Viewer, connected it to the Pi and I can see the desktop, (little bit eerie, if a pixel is being displayed on the wire but not on the screen, does it truly exist?).
I then went into Screen Configuration in the main menu -> Preferences and selected the HDMI-1 display (as my HDMI cable is plugged into the port closest to the USB C power port, which is HDMI port 1).
Then go into the Configure menu, down to Screens, pick your screen (I only have HDMI-1 as that's the only screen connected), then into Resolution and set it to something low (I set mine to 800 X 600) and press the green tick icon on the toolbar to apply the change.
(If the screen suddenly wakes up for you, then this will be the way to solve it)
Keep going up in resolution and applying the change until the screen goes black again, and when it does just select cancel to revert to the last size you were on (the one that worked before you selected a resolution that was too high for the monitors capability).
This was the quickest, easiest way to test and get this running for me, you may find a neater way
As a final thought, as I said I've a few screens I could test this with in my home, and the one that was fine from the get-go was a simple monitor, the others were ones with multiple inputs so I have a suspicion that it may be something to do with the way that the Pi asks the screen what it's capable resolutions are and if its a normal screen it's quite explicit, but a screen that's designed to be connected to a wide variety of different types of inputs is a lot more flexible, so the Pi throws it's hands up and shouts 'FINE! I'm going to display at 1366 X 768 then cos that's my favourite resolution!' and the screen is just sad.