Now, you brought up the X backend. The X backend, unless im mistaken, is XWayland. XWayland is so that if you have an application that was specifically written for X (Not done in a modern version of GTK or Qt) that they can still run under Wayland. Wayland will spawn a special X server that is the exact size of their window. X thinks its in charge but when it goes to display the contents of the screen, its actually pushing them to a Wayland buffer and then Wayland handles where, when, and how to display the contents.
I think what renox was trying to clarify is that the X11 backend in Weston (x11-backend.so) is not XWayland, it's the backend that allows Weston to run inside an X environment. So, if you run Weston inside a running X environment, you get a window that pop up with Weston running inside it. This weston communicates with the running X server and sends its buffer updates to X. This is useful for running Weston when your hardware doesn't support the DRM backend.
XWayland is not a backend per se, ie. you don't run Weston "on" this backend. Instead, as you say, this module listens for applications launched in Weston that try to connect to an X server, and if they do (if it's an old program written specifically for X), then Weston launches an X server, and takes the buffer that the application sends to this spawned X server and displays it as any other application running under Weston.
Has anyone actually managed to connect to wayland/weston via RDP protocol? I've enabled rdp-backend and it seems to be working but when it starts running FreeRDP complains about Address being already in use and it segfaults having negotiated a connection to an external client. Also, when I run weston with rdp-backend enabled then desktop-shell does not seem to be launching at all.
I'm sorry but I am a newbie to wayland/weston devepment and may confuse a few terms.