Did it ever work right?
Front derailleurs are real sensitive to their position on the seat tube both up/down and the angle relative to the plane of the chainrings. That doesn't change itself but, if it has never been right, that could be your problem.