Unpack has the little known property to be able to calculate sums in several bit widths. In this case first convert the hexadecimal representation to a character string, sum over that in 8 bits and invert:
perl -wle 'print 0xff ^ unpack "%8C*", pack"H*", "00018108000202020202
+0202"'
103