In fact I don't really know why this is; it's a visceral reaction, but here are some possibilities:
  1. You gave them a real name, presumably; why not use it occasionally?
    Yes, people do come up with nicknames for their kids, but a little originality wouldn't hurt.
  2. He's not your buddy.
    As in the snippet I heard on the street today, which was the trigger for this list: "Hey, buddy, I'm hungry so we're going to get something to eat, then we'll go shopping, don't be such a baby! " Not how you talk to a buddy. Talk about mixed messages, and the pot calling the kettle black.
  3. If you think of your kid as your buddy, you are going to have a hard time providing the other aspects of parenting that kids require: role model, guide, advisor, figure of respect, spouse to the other parent (assuming it is a two-parent family).
  4. What will you do when the only name he responds to is Buddy?
    Could be problematic at the end of the next birthday party when the parents arrive.
  5. What are you going to do when you have a second kid?
  6. The slight benefit for me when you call them this in public is that it provides a warning that I need to tune you out immediately so I don't have to suffer through whatever is coming next.
  7. I had an uncle named Buddy, and that's what we called him. So lay off.