Still a problem in Australian Summer Patch. I've been playing peacefully. I sent three troops down to fight a nest of barbarians to satisfy a city-state mission, within 5 squares. My troops stayed several squares away from Pedro's borders. While I'm getting that done, he founds a new city, boxing in my troops, and asks me to stay away from his borders. I apologize and negotiate an open borders deal which he grants. When the troops leave through the city-state which I'm now suzerain of, but now next to his new border, wham, broken diplomatic promise, -6 points. Reload and try going through his new land instead of the city state, same thing. One can ignore the request and take a -3 penalty for it instead (and possible additional points for treading near the border), but no penalty should be necessary when a deal has been struck.
Making an open borders agreement should reset the promise to stay away from the borders to 0, as if it was never requested or granted. (Besides, what you say when apologizing is that your troops are merely passing through, implying that you're not about to attack the other civ. I could see hitting you with a broken promise penalty if you then attacked--in addition to a warmongering penalty--but sometimes geography limits your ability to get them away immediately.)