You may have a pulley going bad. Had that issue on my JD deck, and one of the pulleys ended up being the issue. They may turn, but if they don't free spin, they cause drag and that will throw the belt off. Check your pulleys and spindles for free movement when the belt is off. They shouldn't have any noise, grinding, or play when spinning or being checked. Ensure spindles are regularly greaased if they have a fitting, too...Any body have any ideas?