if the starter motor is too old it can cause the solenoid to fail by drawing too much curent welding its contacs inside.
make sure the solenoids connections are all clean and tight, same for on teh battery and on the starter.
is the solenoid mounted tightly? if not it may not be making a good ground connnection.
Another thing is try to have the battery fully charged, maybe evena new one when you use it for about the first week, makes it work less.