If it's helpful, the original implementation of Arc was actually quite similar to this - a bunch of macros that compiled down to MzScheme (which eventually became PLT scheme, which eventually became Racket!).
I found Arc version 3.1 on arclanguage.org. It does compile to (Mz)Scheme - but it does not use the MzScheme macro expander. It reads Arc program as an s-expression. Compiles the program and produces an mzscheme program also represented as an s-expression. The "problem" is that s-expressions doesn't track source location of identifiers. That made it impossible for the old Arc implementation to reuse the MzScheme tools.
Some the libraries were written using Arc-macros that expanded into simpler Arc constructs, but MzScheme macros weren't uses in that process.
Note: PLT Scheme was the names used when MzScheme, DrScheme and a few other tools was distributed together.