Если "бабушка" или "дедушка" означает социальную роль, то можно и прислушаться к желанию человека, ничего в этом трагичного нет. У этого человека есть имя, и внуки могут обращаться по имени.
Я вот жутко не люблю, когда племянники меня "тётей" называют. Тем более, что младшим племянникам это и в голову не приходит, я им сразу представляюсь по имени, когда знакомимся) "Тётей" меня часто называли, пока я была маленькая, племянники, которые были старше меня. Вот они меня изводили! Я была совсем маленькая (было мне года 3-4), а племянники дразнились и постоянно обращались ко мне не по имени, а "тётей", причём, это носила саркастический оттенок.
С тех пор я и невзлюбила, когда меня называют таким "именем".
Что касается возраста... Если "бабушка" или "дедушка" - это не социальная роль, а вопрос возраста, то здесь ситуация несколько сложнее. Если назвать "бабушкой" или "дедушкой" человека 50-60 лет, полагаю, он, действительно, обидится, ибо все, кого я знаю такого возраста, под такое определение не подходят.
Как я считаю, так назвать можно человека после 70-80 лет, когда признаки старения уже налицо, сил у человека мало, он уже болен, и сам себя начинает чувствовать стариком.
А если вы кого-то назвали "бабушкой", а человек возмутился, лучше извиниться.
Мне сейчас 20, и когда некоторые странные люди называют меня "женщиной", я жутко обижаюсь. Ибо отношусь к ещё очень юной учащейся молодёжи, эх, и не хочу переходить на другую ступень жизни раньше срока - это всегда успеется!
Ориентироваться стоит на внешность. Лучше уже и пожилой женщине (или пожилому мужчине" сказать "женщина/мужчина", так вы немного польстите человеку, чем назовёте стариком.