Because there is no contrast here. It is generally considered somewhat normal to have some pains when old. If it was "Grandma is old, and grandpa is not", then you could use а to connect the two clauses.
Why can't I use стара here, instead of старая? As far as I remember, we were thought that when there is an expression of the form X is ADJ, we need to use the short form of the adjective. So, why is it not allowed here?