If you want multiple addresses specifically via DHCP, macvlan is a good option, however you have to look at the DHCPID the client sends to the server. If it is based on the MAC address, you'll get an IP 3 times. If it is the hostname or some other ID that belongs only to the node, you'll be served 3 times the same IP.
Raspbian uses dhcpcd as its DHCP client and network setup utility. Dhcpcd clashes with /etc/network/interface that frankly nobody should use anymore.
If you want to stay with the old clunky interfaces file, first add "denyinterfaces eth0" to /etc/dhcpcd.conf. Then check which DHCP client ifupdown calls and look for available options in case you don't get your multiple IP addresses but a single one.
If you choose to leave ifupdown and use dhcpcd, start by undoing anything you did in the interfaces file. That file should be empty of any interface declaration.
By default on Raspbian dhcpcd uses a DHCPID based on the MAC address, so that part should be good. What dhcpcd does not handle is interfaces creation.
You'd have to handle that part in something like /etc/rc.local or much better in /etc/systemd/network by creating .netdev
If you choose the best option, systemd, you'll need to enable systemd-networkd as the service is disabled by default on Raspbian Buster.