Actually, 0xFFFF*0x10 + 0xFFFF = 0x10FFEF (and not 0xFFFFF), but such an address would only be accessible if A20 is enabled, otherwise it would be truncated to 0xFFEF.

Nonetheless, really large 16-bit .EXEs in DOS would need to begin at low physical addresses and they wouldn't be able to cross the region where the BIOS and video buffer are (e.g. above 0xA0000). So, the 0xFFFFF mask is still needed in the formula.