Osimhen is a quality striker, there is no doubt about that. I don't think he is the primary option for Real Madrid. Haaland would be a great option for Real, but my preference would be Mbappe. He has a structure that can play both as a forward and as a wing. Haaland plays as a complete finishing striker. While Mbappe makes it easier to intervene in the game, you cannot remove Haaland from his position.
Haaland looks like a static striker. He's the target striker. Mbappe looks like a more mobile striker. In fact, he can play as a number 10 or a number 7. It's possible to use him in a broader tactical perspective. Of course, Haaland can also play in different areas, but then I think his efficiency decreases.