Во-первых, важно понимать, что имеется в виду под гарантией. Согласно Толковому словарю Ожегова, "гарантия - ручательство, порука в чем-нибудь, обеспечение". Т.е. буквально так: "если я не выполню свои обязательства, то компенсирую вам это таким-то и таким-то образом".
Во-вторых, что под услугой понимаем? Выполнение условий контракта? Или еще и результат, который получит клиент, обратившийся за услугой? Выполнение условий контракта - обязательно должны и проговариваться, и, если есть возможность, прописываться, и - в ряде случаев, потому что прям всегда не получится - обеспечиваться гарантией. А вот что касается результата, то для перечисленных в вопросе специалистов гарантировать клиенту результат = вводить его в заблуждение, да и себе вредить. Почему? Потому что очень много факторов, на которые повлиять нельзя от слова "совсем". И люди все думают, чувствуют, реагируют по-разному, и конъюнктура может в любой момент измениться, и форс-мажоры возможны, и технические проблемы... Обещать клиенту, что проблем не будет - нечестно. Обещать, что они будут, но ты их решишь (за те же деньги) - тоже. Поэтому лучше сразу ставить точки над i, чтобы ни у клиента, ни у специалиста не было иллюзий относительно будущего сотрудничества.
На всякий случай уточняю - при этом с кислым выражением лица говорить: "Ну, я вам ничего не гарантирую" - дурной тон. Профессионал на то и профессионал, чтобы сделать всё, что можно в конкретной ситуации. И вот это "всё" и можно гарантировать.