Problem with UDP frames on Arduino Ethernet

There are no assumptions for my part

Yes, there are. You are assuming that Udp.write() accepts an int. Typically, write() methods do not. You need to verify that Udp.write() is defined to take an int.