How do I find the IP addresses assigned to devices connected via Internet Sharing on Snow Leopard?
Try pinging the broadcast address. This should work as long as the Pi got an IP from DHCP and responds to ping.

First, open up a terminal and run ifconfig en0. This should give you the info for your ethernet interface, if not, just use ifconfig and find it yourself. Make a note of the broadcast address. In my case, it's 192.168.2.255:

inet 192.168.2.99 netmask 0xffffff00 broadcast 192.168.2.255


So I'll run the command ping 192.168.2.255. Do the same with your broadcast address, and hit CTRL-C to stop the ping once you have some results:

Miramar:~ gabriel$ ping 192.168.2.255
PING 192.168.2.255 (192.168.2.255): 56 data bytes
64 bytes from 192.168.2.99: icmp_seq=0 ttl=64 time=0.113 ms
64 bytes from 192.168.2.1: icmp_seq=0 ttl=255 time=3.567 ms
64 bytes from 192.168.2.99: icmp_seq=1 ttl=64 time=0.096 ms
64 bytes from 192.168.2.1: icmp_seq=1 ttl=255 time=3.455 ms
^C


The broadcast is intended to go out to everything on the network. Everything that hears it should respond. In my case, I only see my IP and my router's - I guess it didn't bother passing the request on to my other machines, but you're directly connected to the Pi so you should see it there.