Должен ли хороший front-end разработчик быть и хорошим дизайнером?
Соглашусь высказываниями коллег выше, конечно же, front-end не должен владеть полноценными навыками дизайнера, но основами работы в фотошопе - обязательно.
То есть, он должен уметь "читать" макет: знать элементарные основы фотошопа; работать с группами и слоями, чтобы видеть какие параметры слоя использовал дизайнер; уметь сохранять изображения и графику из макета (иконки, картинки и т.п.), знать где находятся параметры шрифта, чтобы понимать какой размер и шрифт использовался и прочее по мелочи.
Иными словами, он должен обладать элементарными знаниями фотошопа и на этом его дизайнерские знания оканчиваются. Конечно, если он знает больше, это плючик ему, но он не обязан применять эти знания для доработки макета.
Дизайнер, в свою очередь, должен обладать не начальными, а более менее нормальными знаниями front-end, что бы понимать принцип верстки и не рисовать безумных вещей, которые нужно верстать дикими способами или вообще невозможно сделать.
Со стороны такая расстановка кажется несправедливой по отношению к дизайнерам, но, я это говорю как дизайнер. Начинал работу в вебе как Front-end, чуть-чуть back-and'a , а потом переключился на дизайн. И знания верстки очень сильно помогают мне оптимизировать работу с верстальщиками. Работая с несколькими верстальщиками постоянно, я изучаю их стиль верстки и рисую дизайн, с учетом их "любимостей", они, в свою очередь (если знают хорошо фотошоп) тоже идут мне на встречу и подправляют мои "забытости" (ховер какой-нибудь одной кнопки, или окно, которое отличается от других наличием или отсутствием какого-нибудь одного поля). Но по крупным недочетам они обращаются ко мне и это правильно.Итог:  
Если у вас налажена постоянная работа с определенными дизайнерами и они добросовестно относятся к своему делу (подписывают все слои, делают комментарии и UI файлы) и уважают вашу работу, но чисто по-человеческому фактору можно пойти им на встречу в каких-то мелких моментах, но вы не обязаны.
Если вы работаете с дизайнерами, которые меняются как перчатки, с "грязными" макетами (не подготовленными для верстки и сделанными абы-как), то ничего дорисовывать вы не должны! Это должен делать тот дизайнер, который рисовал или другой, но не вы. Вы технический работник, а не творческий и то, что вы умеете что-то "дизайнить" в фотошопе к вашему спектору работ не относится. Это точно так же, как дизайнера просить в back-end'e что-то подправить - не его огород.
Да, front-end разработчик обязательно должен владеть навыками дизайнера.