I was reading up on wave drag, and I can't understand why it is not possible to predict where shockwaves are formed, when the aircraft is travelling at say, Mach 0.9.
Because it corresponds to the "singularity" of Prandtl-Glauert. It can be explained by the singularity in the Prandtl-Glauert transformation, in which at Mach 1 the function is infinite at limit. Actually non-linear terms become relevant, as an example the pressure coefficient depends on freestream fluid density, then on the temperature of the air, and it depends also on the square of the velocity of the fluid. Around Mach 1 it is really hard to define accurately the boundary of transonic region.
Actually, you can't directly solve the Navier-Stokes equations, except for very simple cases, hence you will use their simplified forms, i.e. subsonic (compressible or not) and supersonic. In a transonic region, as the flow past an airfoil beyond its critical Mach number, you have both subsonic and supersonic flow regions, eventually with shock waves. Also consider that shock waves may interact with the boundary layer. Even worse, everything may change with time (e.g. buffeting). That's this regimes are usually predicted by CFD.