I guess it depends on the way your variables are coded : check the PARAM option in the CLASS statement.
If you typed CLASS treatment / PARAM = GLM ; then your coefficients 1 0 0 -1 are correct. If you simply used CLASS treatement ; without options, or with PARAM=EFFECT, then the coefficients would be 2 1 1 as the help says.
Both lead to the same results :
[pre]
ODS SELECT contrastTest (PERSIST) ;
PROC LOGISTIC DATA = sashelp.class ;
WHERE age IN (12,13,14,15) ;
CLASS age ;
MODEL sex = age ;
CONTRAST "test 12 vs 15" age 2 1 1 ;
RUN ;
PROC LOGISTIC DATA = sashelp.class ;
WHERE age IN (12,13,14,15) ;
CLASS age / PARAM = GLM ;
MODEL sex = age ;
CONTRAST "test 12 vs 15" age 1 0 0 -1 ;
RUN ;
ODS SELECT ALL ;
[/pre]