When answering the question "Could Rails be built without Ruby?", I think you have to address not only the functionality but the aesthetics as well. It's more than the simple lines-of-code metric. It's whether you've built a language up towards a Rails language that solves problems common in web development. As Graham points out, you could build Rails out of any language that's Turing-equivalent; the real question is in your quest to duplicate the aesthetics, whether you'd wind up doing a back-door implementation of a Ruby interpreter in the process. For Python users, the port might not be incredibly difficult. For C users, it might be easier to build a Ruby interpreter.
One of the knocks against Zope 2, a leading Python app and backend server framework, was how un-Pythonic the framework appeared to some developers. The architects of a ground-up rewrite, Zope X3, took this to heart. In their early developmental roadmap, they wrote: "We know that Python is a great language because it has a small core of concepts, values explicitness and consistency, and has a great standard library. Zope will follow this lead." At least one Pythonista, Xavier Defrang, thinks "there will never be anything like [Rails] in Python, PHP, Perl or Java just because language matters... It's so great to finally get your hands on a framework which is primarly designed with simplicity and elegance in mind instead of trying to show up as a Design Pattern gallery."
One reason that Rails is still so Ruby—even though it kinda has its own domain language—is probably because Ruby is awesome when it comes to creating domain specific languages. That way, the Ruby aspect is not lost, and there’s no real learning involved in learning the domain language. This is unlike some other web development frameworks.