Has anyone used a Shield Buddy (en lieu of a Arduino Mega2560) as the RAMPS 1.4 host board?
It's not quite as simple as you would suggest.

You can't just recompile Marlin for another device. You'd need to rewrite large parts of it. It may be compatible with the Arduino IDE, but that doesn't mean you can just run firmware intended for the AtMega2560 on it. All the timings (e.g. those of the pulses sent to the stepper motors) would be off, if you managed to get it to compile at all.

As some examples, here are some pieces of code from Marlin that would be broken, as they're written directly in AVR assembly:

#define DELAY_1_NOP  __asm__("nop\n\t")
#define DELAY_2_NOP  __asm__("nop\n\t" "nop\n\t")

[...]

// ensure 100ns delay - a bit extra is fine
asm("nop");//50ns on 20Mhz, 62.5ns on 16Mhz
asm("nop");//50ns on 20Mhz, 62.5ns on 16Mhz

[...]

#define MultiU24X32toH16(intRes, longIn1, longIn2) \
asm volatile ( \
             "clr r26 \n\t" \
             "mul %A1, %B2 \n\t" \
             "mov r27, r1 \n\t" \
             "mul %B1, %C2 \n\t" \
             "movw %A0, r0 \n\t" \
             "mul %C1, %C2 \n\t" \
             "add %B0, r0 \n\t" \
             "mul %C1, %B2 \n\t" \
             "add %A0, r0 \n\t" \
             "adc %B0, r1 \n\t" \