Gameyob DSi and mGBA are both pretty accurate for GB/C emulation and a little more flexible than injection in terms of save states or scaling, especially if you want to pick from truckloads of ROMs rather than injecting one by one.
mGBA is the most stable/compatible GBA emulator but most games need to run 30 FPS (frameskip=1) to avoid slowdown on a N3DS. GBA Injection gives near perfect speed/compatibility because it runs the CPU natively like a DS phat/lite playing slot 2 carts, although you won't have save states, and any cheats need to be inserted into the ROM itself.