She has spent four years married to Prince William, and us commoners are still waging the Great Kate Debate: Is she Princess Kate or Duchess Catherine? Kate Middleton or Catherine Wales?
Let's break it down. First, born Catherine Elizabeth Middleton, she didn't garner the nickname Kate until adolescence. But now, Will refers to "Catherine and I" in speeches—as do other members of the palace.
On their wedding day, Catherine took on the female form of her husband's titles—making her Princess William of Wales—the same way a commoner takes her husband's last name. That day, Queen Elizabeth also bestowed the title Duke and Duchess of Cambridge on them. For a fun complication, the young royals are also known as Earl and Countess of Strathearn in Scotland and the Baron and Baroness of Carrickfergus in Ireland.
Now, brace yourself: It was never officially Princess Diana and it will never be Princess Catherine. You only carry prince or princess before your name if you were born into the role. (The same rule actually applies to Duchess, by the way. Duchess Catherine is not an official thing.) Prince William, Prince Harry, Prince George, Princess Charlotte, and even Princesses Eugenie and Beatrice will all use it their entire lives—unless they become King or Queen.
So when Diana was married to Charles, her name was Diana, Princess of Wales—despite how popular "Princess Di" was. The Queen ordered her stripped of the royal title upon their divorce. (Camilla Parker-Bowles is technically Camilla, Princess of Wales, Duchess of Cornwall, though she only uses the latter because of the associations.)
Catherine won't be Her Royal Highness Catherine, Princess of Wales—until William becomes the Prince of Wales after his father takes the throne. Once Prince William becomes King, she will become Her Majesty Queen Consort Catherine VI.
Meet Mrs. Cambridge
As for her last name, members of the royal family today can go by their family dynasty, a surname, or just their first name, according to the Royal Family website. Historically, British monarchs were known by the names of the countries over which they ruled or their family dynasty, like the Tudors or Stuarts. Her Majesty Queen Elizabeth II was born a Windsor, and when she wed Philip Mountbatten, they gave their children the last name Mountbatten-Windsor.
At birth, Prince William was also given the name Wales, the area of which his father Charles, Prince of Wales, "ruled" (in addition to being a Mountbatten-Windsor). As a student at Eton and St. Andrews, he was William Wales; as an RAF pilot, he's referred to as Flight Lieutenant William Wales.
But he technically should use Cambridge now. This quirk is because being born a prince or princess is more of a courtesy title (See: Eugenie and Beatrice) and Duke of Cambridge is a more "major" title than being a non-sovereign prince of Wales. So a very casual Kate could go by Catherine Cambridge or Catherine Mountbatten-Windsor, and the same goes for George and Charlotte.
Official or not, perhaps the real authority on what to call Kate is this: When registering Prince George's birth, William wrote her name as "Catherine Elizabeth, Her Royal Highness the Duchess of Cambridge." (He wrote a slash through married surname.) Job title? "Princess of the United Kingdom."