Все работает просто прибавлять надо не INT а DWORD. Например так:

VAR
df : ARRAY[0..3] OF WORD;
pDF: POINTER TO WORD;
dwIndex: DWORD:=1;
END_VAR

pDF := ADR(df[0]);
pDF := pDF + dwIndex;

И все.