Princess Kate steals the show