Down-votes are a part of life here. You're never going to be able to explain all of them, and different people may judge an answer on different merits (for example, and I'm not saying it's true in your case, but the asker might find the answer helpful and accept it, even though others see serious problems with it). If you want people to explain their down-vote, it's not going to happen. People who have earned the privilege are free to down-vote as they see fit, and the down-votes are anonymous for a reason. Even if you forced people to leave a comment when they down-vote, that would do two things in a lot of cases, either (1) they would make up gibberish or (2) they simply wouldn't down-vote. We want people to down-vote when content is bad, and we're willing to sacrifice the occasional unwarranted down-vote and/or the ability of the poster to understand the down-vote. Please see this thread for more background info on this:
Encouraging people to explain downvotes
Also keep in mind that even if you improve your answer, that doesn't magically mean that down-voters will ever come back and see that, never mind reverse their vote. There currently is no mechanism to notify a down-voter that a post has been improved, though it has been suggested and more than once.
@MNight makes good points about your answer, and also about posting annoying "explain your down-vote" comments. In fact I've started flagging those as not constructive.