Recently, 3D building models have become an important aid to many positioning methods such as LiDAR and GPS positioning. Creating an accurate 3D building model requires accurate 2D building boundaries. We propose a method to correct the horizontal location errors of the 3D building model using GPS measurements. In an urban canyon, several GPS signals are reflected by buildings, and these reflections are potentially capable of indicating the correct position of the buildings. Starting with a raw 3D building model, we apply a signal ray tracing method to track the simulated reflection path of the GPS signal. Theoretically, the length of observed reflection path, which is known as the non-line-of-sight pseudorange, and the length of simulated reflection path should be similar. However, if the 3D map is not accurate, a difference between the pseudorange and simulated range is found. Using this difference, the proposed method estimates the true position of the wall of the 3D map. Results show that the proposed method successfully corrects the position of the wall of the raw 3D map and achieves sub-meter accuracy.