Jeremy,
It's certainly possible, I've done something along these lines for an hydrological
model:
http://www.agu.org/pubs/crossref/2008/2007WR005949.shtml using
pymc.
When taking errors into account for D1, what you do is assume there exists a set of unknown true values T1. These true values are related both to the data D1 through your gaussian error distribution, and to the D2 dataset through the model, model parameters and output uncertainty.
D1 = T1 + gaussian_error
D2 = Model(T1, parameters) + gaussian_error (standing for both output data uncertainty and model uncertainty)
In pymc, you'd then have two sets of @stochastic objects: the parameters, and all the true input values. You'd have also two sets of @observed stochastic: D1 and D2.
It is also useful to define the model as a @deterministic object.
HTH,
David