The disk image is a 1K header including the 512 byte 'identify' data for the drive, so yes
dd if=image.raw of=cfdisk.ide seek=2 conv=notrunc
(the default block size is 512 bytes)
should do the trick
For the disks makedisk will produce an empty disk with the right headers. The types (from ide.h) are
1 Classic CHS 504MB IDE drive
2 20MB very early CHS IDE drive
3 20MB LBA capable IDE drive or CF
4 40MB LBA capable IDE drive or CF
5 120MB ditto
6 256MB ditto
I generally use 4 a 32MB image. The first two types are really intended for other emulations than RC2014 which only understood some old drive types or need to match burned into ROM/BIOS table drive type codes.
Alan