First question: Why not New York? Roosevelt was saddened by the death of his first wife, Alice, with whom he had lived in New York. He went to a ranch in the Badlands of South Dakota to get away from it all. New York was probably the last place where he wanted to get married.
Second question: Why London? Edith was living in London, some say to "economize," and others might say that it was part of the "grand tour" taken by upper class women. Their honeymoon was a long tour of Europe, from which London was a good launching pad.
Also living in London was Theodore's best man, Cecil Spring Rice. It's not clear what exactly was his relationship to Teddy, but the fact of his being the best man suggests that Teddy was close to many other Britishers.