Потому что слово заимствовано из латинского (через французский/немецкий): лат. suffixum / suffigere — «прикреплённый» (sub- «под» + figere «прикреплять»). В латинской основе произошло ассимиляция согласного (sub- → suf-, далее suff-), поэтому в источнике стояло двойное «ff». Русская орфография сохранила это написание (как и в словах типа «эффект»). Фонетически в русском звук [ф] не удваивается — произношение ближе к одному [ф], но в написании остаётся «фф» по историко-этимологическому принципу.