Most importantly, you can't just enable DMA without specifying which DMA mode you want to use. Therefore the '-d 1' has to be always accompanied by an appropriate '-X mode' option. For UDMA the mode value to use is 64 + UDMA# (for older multiword DMA the constant is 32). Some people report success with hdparm -c1 -d1 -X69 for 32-bit UDMA mode 5, but I'm following a more conservative recommendation to avoid the SATA data corruption issues:
I'm reducing the transfer size to 15KB: echo "max_kb_per_request:15" > /proc/ide/hde/settings and use hdparm -d1 -X66 for UDMA mode 2. Since I don't know if -c1 or -c3 are save, I leave data transfers to be 16-bit.
If you want to see the maximum performance possible you could even try -X70 for UDMA mode 6, but I have no idea whether it will work.