So in this case, the user HAS control over the databinding? At least the database admin. Is it a requirement, that controls can dynamically change bindings to different column names, even though the properties seem clearly specified(PatientName will always be PatientName and nothing else)?
A silverlight application gets packaged down to .XAP, and I think the XAML files get compiled as resources into the dll, so a user can't control the bindings anyways.
Are you sure this is the right approach? Is the database schema given and you basically have to conform to it? You could do it, but I absolutely see no reason to do it(Unless you would want to create something like dynamic formulars, where controls could be dynamically added or removed based on database).