How does this incorrect model of a wire give the correct result for B-field produced? I see in Griffith's book Introduction to Electrodynamics, 4th edition, the following model (paraphrased).

Consider a wire (infinitely-long) with positive linear charge-density $\lambda$ moving to the left with velocity $v$, and negative linear charge-density $-\lambda$ moving to the right with velocity $v$. Thus, the total current in the wire is $I=2\lambda v$, directed towards the left.

They then proceed to deduce, through standard Lorentz contraction rules, that a particle of charge $q$ moving some distance $s$ away from the axis of the wire with velocity $u$ along the direction of the current (to the left) will experience a force 
$$F=-qu\left(\frac{\mu_0 I}{2\pi s}\right)$$
This is the correct formula one would get from assuming the presence of a B-field in the stationary frame, but what I don't understand is how this was correctly deduced when the model was incorrect. In reality, positive ions are stationary inside a conductor, and only electrons drift along the wire (to the right). Thus, the current is only constituted by electrons/negative-charge. When I do the calculation under that assumption/model, both the positive and negative linear charge-densities still change, but by different factors, leading to a different final expression. Is there something wrong with my concern?
I've left out the calculations for now, hoping that the problem lies in what I wrote above. I can write the calculations out if necessary.

CALCULATIONS (Solved):
Here is an illustration of the model I have posed.

The positive ions are the red circles, the conducting electrons (supplied by source) are blue circles. By assumption, the wire is electrically neutral in the lab-frame (top picture). In that stationary frame, let the linear charge-density of the electrons and positive-ions be $-\lambda$ and $\lambda$, respectively. Upon boosting into the frame of the moving test charge $q$, the linear charge-density of the electrons will increase by the factor by which their spacing decreases. If the electrons were stationary, this would be given by $\gamma_1=(1-(v/c)^2)^{-1/2}$. However, they're moving with velocity $u$, so I've got to look at the contraction of the electrons upon boosting from the electron's frame to the test-charge's frame relative to the contraction of the electrons upon boosting from the electron's frame to the positive ion's frame (top of picture). This turns out to just be the ration of contraction factors, which is given by,
$$\begin{align*}
\lambda_-'&=-\frac{\gamma_1}{\gamma_0} \lambda\\
&=\frac{-1}{\gamma_0\sqrt{1-\left(\frac{u'}{c}\right)^2}}\lambda, \,\,\,\,\gamma_0=\frac{1}{\sqrt{1-\left(\frac{u}{c}\right)^2}}
\end{align*}$$
After a fair bit of algebra (which I'm confident I've done correctly), one sees that
$$-\frac{\gamma_1}{\gamma_0} \lambda=\frac{-\left(1+\frac{uv}{c^2}\right)}{\sqrt{1-\left(\frac{v}{c}\right)^2}}\lambda$$
On the other hand, the linear charge-density for the positive ions will increase by a factor of,
$$\lambda_+'=\gamma_2\lambda=\frac{1}{\sqrt{1-\left(\frac{v}{c}\right)^2}}\lambda$$
Thus, the total linear charge-density in the co-moving frame $\lambda_{tot}$ is,
$$\begin{align*}
\lambda_{tot}&=\lambda_+'+\lambda_-'\\
&=\frac{1}{\sqrt{1-\left(\frac{v}{c}\right)^2}}\lambda-\frac{\left(1+\frac{uv}{c^2}\right)}{\sqrt{1-\left(\frac{v}{c}\right)^2}}\lambda\\
&=\gamma_2\left(1-\left(1+\frac{uv}{c^2}\right)\right)\lambda\\
&=-\gamma_2\frac{uv}{c^2}\lambda
\end{align*}$$
The electrostatic force felt by the test-charge $q$ in it's co-moving frame is then given by the formula
$$F_{co-moving}=qE=\frac{q\lambda_{tot}}{2\pi\epsilon_0 s}$$
The force in the stationary lab frame is related to the force in the co-moving frame by $1/\gamma_2$, so
$$F_{stationary}=\frac{1}{\gamma_2}\frac{q\lambda_{tot}}{2\pi\epsilon_0 s}=-\frac{uv}{c^2}\frac{q\lambda}{2\pi\epsilon_0 s}$$
Using that $I=\lambda u$ and $c^2=(\epsilon_0 \mu_0)^{-1}$, we arrive at the familiar result.
$$\boxed{F_{stationary}=qv\frac{-\mu_0I}{2\pi s}}$$
Thus, in the stationary frame, we can translate this as the wire producing a clockwise magnetic field (axis aligned with current - anti-aligned with electron flow), acting on a test charge travelling in the direction of the current a distance $s$ away from the axis of the wire, being influenced by a force given by $F_{stationary}=q\mathbf{v}\times\mathbf{B}$.
 A: Your different final expression is erroneous. The generation of magnetic fields by currents doesn't care if you have positrons flowing inside an antimatter wire or electrons flowing in a wire made of matter. It doesn't care if you have a current made by a fluid with mobile positive ions such as $\mathrm{Ca}^{2+}$ such as in a cell.
Current is current and generates magnetic fields. And you feel a force from the magnetic field in a way that doesn't depend on what made the field.
A simpler way to correctly compute the charge densities would be to literally make a segment one meter on length and count the number of charged objects in it and then multiply by the charge of each object.
When you boost frames from the proton frame to the frame of the charge outside the wire you will have to find the actual events this new frame finds simultaneous that this new frame finds one meter apart and count the charges in that region.
A: Mathematically, a positive current traveling to the left is the same thing as a negative current traveling to the right (this is an important concept to think about). This is because electric current is really a current of moving charges, not necessarily electrons. It just so happened that we decided that the particles actually doing the moving are "negative." So we call a current negative merely by convention.
Think of it this way: if I have an electrically neutral conductor, and all of the electrons flow to one end, what charge is the other side?  It will be positive, because that is what is left after all of the electrons have left that side. If you consider this from a different perspective, saying that a negative current went to the one side gives you the same result as saying that a positive current moved the other way. Because in either viewpoint, one side gets a net charge and the other gets the opposite. This logic applies to any moving current and it is sometimes helpful to consider when looking at certain types of circuits.
In the case of this question, the total current is $I=2\lambda v$. Griffiths just split the total current up into one $\lambda v$ in one direction, and another in the opposite direction with different charge. Since they are technically the same thing, this adds up to $2\lambda v$.
