That would work, kinda.
One, no need to dd the whole puppy, that's just brutal on the disks:
After the array is built, and reboot at least once with the array in your already existing fstab to make certain that it assembles correctly on boot:
mount /dev/md0 /mnt/somewhere
rsync -Sav --exclude /proc --exclude /sys /* /mnt/somewhere
The excludes are so you don't end up copying a bunch of everchanging kernelspace goop that you don't need there anyway, you just need the mount points.
Now... make it bootable and mountable:
edit /mnt/somewhere/etc/fstab and change the entry for / from /dev/sda1 to /dev/md0
mount -t proc proc /proc
edit /boot/grub/grub.conf to reflect the new boot and root drives and re-run grub.
The last part is where it gets hinky. I never use grub much, and I know the lilo option to write the mbr spread accross a mirror, but not the grub one. It might take more research. Of course, the easy way, is to just make a seperate /dev/sdb1 for /boot and put it in /etc/fstab so that /boot is on its own wee little partition and not part of the mirror.