Does this work?  the underlying value is not a QUrl, it's a QString, so I think it may need to be:
return QUrl(d->data().value(FACEBOOK_ONTOLOGY_ALBUM_COVERPHOTO).toString());