Grand duchess Joséphine-Charlotte was not a princess of the Scandinavian royal houses, she was a Belgian princess. The fact that her mother was the daughter of a younger son in the Swedish royal family, prince Carl, duke of Västergötland and his wife, born princess Ingeborg of Denmark, doesn't mean that their granddaughter was to be considered as a Scandinavian princess. To say that Joséphine-Charlotte was a Scandinavian princess would be as correct to say that king Olav V of Norway was a British prince because his mother was born princess Maud of Wales.The late Princess Ragnhild was with the late Grand Duchess Josephine Charlotte the last Princesses of the Scandinavian Royal Houses.
Princess Astrid is now the only survival Princess of the Houses of Sweden, Norway and Denmark (the late Princess Axel)
And to call princess Margaretha of Sweden, later princess Margaretha of Denmark, princess Alex of Denmark it not correct, she was never known by that name neither in Sweden nor Denmark, as the British tradition of giving a royal spouse the address princess (husband's name) of X, doesn't exist int the Scandinavian countries. Even in the U.K. a royal spouse born as a princess in a foreign country would be allowed the title of princess (given name) of (husband's father's territorial designation) if the husband isn't made a royal duke, and that was why princess Marina, duchess of Kent could style herself as princess Marina after her husband's death.