I don't understand your calculation. The total calculated sive is 52MBytes, which is too much by far... why do you divide by 1024?
The idea behind those buffers is to being able to store as many packets as possible in memory and waste as little as possible. The main idea is that there are usually two cases: small packets (such as DHCP request/answers, ICMP, TCP connection requests or acknowledges) and big packets that contain data. Big packets are limited to the maximum you can send through Ethernet, which is 1536 bytes. For the small packets 128 is a good limit. You shouldn't change those two values, except if you have a good reason to think it will optimize memory usage in your specific application. You should rather change the number of packet buffers to fill the packet memory.
Using NUMBIGBUFS and NUMLILBUF at 30 with BIGBUFSIZE at 1536 and LILBUFSIZE at 128 should fit in a 65536 bytes packet memory.
As for the descriptors I don't remember how the driver uses them. 1k is more than enough, but you need to check in the driver code how it allocates the descriptors and see if you need to change anything to use your dedicated memories. It may be easier to forget about descriptor memory for now, connect the dma descriptor masters to the main memory and let the driver as it is.