Girsanov Transform and Likelihood Process Domestic to Foreign

Working two exercises relating to $Q^d$ and $Q^f$. I'm comfortable working with transforms and likelihood processes on a risky asset between $Q$ and $Q^s$, and also on an exchange rate $X$ between $Q$ and $Q^d$, but I'm basically employing analogous methodology here on the transform from $Q^d$ to $Q^f$ and I'm not sure if this is correct. Anyways,

Consider the a domestic/foreign exchange rate $X$, and the likelihood process

$$L_t=\frac{dQ^f}{dQ^d}$$

a) Find the Girsanov transform between $Q^d$ and $Q^f$.

So, I've already worked out the $Q^d$ dynamics of $X$ as $$X_t=(r^d-r^f)X_tdt+\sigma_xX_tdW^{Q^d}$$ Now, consider the process $$\frac{B^d_t}{X_t}$$ We have $$d(\frac{B^d_t}{X_t})=\frac{B^d_t}{X_t}(\frac{dB^d_t}{B^d_t}-\frac{dX_t}{X_t}+(\frac{dX_t}{X_t})^2)<=>$$ $$d(\frac{B^d_t}{X_t})=\frac{B^d_t}{X_t}(r^ddt-(r^d-r^f)dt-\sigma_xdW^{Q^d}+\sigma^2_xdt)<=>$$ $$d(\frac{B^d_t}{X_t})=\frac{B^d_t}{X_t}((r^f+\sigma^2_x)dt-\sigma_xdW^{Q^d})$$ Now, by Girsanov, $dW^{Q^d}=\varphi^fdt+dW^{Q^f}$, thus $$d(\frac{B^d_t}{X_t})=\frac{B^d_t}{X_t}((r^f+\sigma^2_x-\varphi^f\sigma_x)dt-\sigma_xdW^{Q^f})$$ For a $Q^f$-MG, $$r^f+\sigma^2_x-\varphi^f\sigma_x=0<=>\varphi^f=\frac{\sigma^2_x+r^f}{\sigma_x}$$ Plugging this back into the $Q^d$-dynamics of $X$ yields $$X_t=(r^d-r^f)X_tdt+\sigma_xX_t(\frac{\sigma^2_x+r^f}{\sigma_x}dt+dW^{Q^f})<=>$$ $$X_t=(r^d+\sigma^2_x)X_tdt+\sigma_xX_tdW^{Q^f}$$

b) Derive an expression for $L_t$

I'm basically getting nonsense for this, so I won't even waste time writing it out. I end up with $L_t=X_t\cdot \frac{B^f_t}{B^d_t}$

Let $(V_t)_{t \geq 0}$ denote a self-financing wealth process in foreign currency units. In the absence of arbitrage, the former process should emerge as a martingale when expressed in the foreign money market numéraire i.e. $$V_0 = \Bbb{E}^{\Bbb{Q}^f} \left[ \frac{B_0^f}{B_T^f} V_T \right] \tag{1}$$
Still by absence of arbitrage, the value of that same wealth process when converted in domestic currency units using the running FX rate, i.e. $(X_t V_t)_{t \geq 0}$, should emerge as a martingale when expressed in the domestic money market numéraire i.e. $$X_0 V_0 = \Bbb{E}^{\Bbb{Q}^d} \left[ \frac{B_0^d}{B_T^d} X_T V_T \right] \tag{2}$$ Rearranging $(1)$ and $(2)$ one gets: $$V_0 = \Bbb{E}^{\Bbb{Q}^f} \left[ \frac{B_0^f}{B_T^f} V_T \right] = \Bbb{E}^{\Bbb{Q}^d} \left[ \frac{B_0^d}{B_T^d} \frac{X_T}{X_0} V_T \right]$$ from which you can deduce that $$\left. \frac{d\Bbb{Q}^f}{d\Bbb{Q}^d} \right\vert_{\mathcal{F}_T} = \frac{B_0^d X_T B_T^f}{B_T^d X_0 B_0^f} \tag{3}$$ Now you found that the FOR/DOM exchange rate $(X_t)_{t \geq 0}$ verifies the SDE $$X_t=(r^d-r^f)X_tdt+\sigma_xX_tdW^{Q^d}$$ from which one can deduce that \begin{align} X_T &= X_0 \exp\left(\left((r^d-r^f)-\frac{1}{2}\sigma_x^2\right)T + \sigma_x W_T^{\Bbb{Q}^d} \right) \\ &= X_0 \frac{B_T^d}{B_T^f} \mathcal{E}\left[ \sigma_x W_T^{\Bbb{Q}^d} \right] \end{align} such that, further noting that by definition $B_0^d = B_0^f = 1$, the Radon-Nikodym derivative (3) can be rewritten as $$\left. \frac{d\Bbb{Q}^f}{d\Bbb{Q}^d} \right\vert_{\mathcal{F}_T} = \mathcal{E}\left[ \sigma_x W_T^{\Bbb{Q}^d} \right]$$ which is a Doléans-Dade exponential (hence a martingale with unit expectation).