単蒸留を数値積分で計算するプログラミングがわかりません
∫dL/L=∫dx/(y-x)
y=ax/(1+(a-1)x)から 1/(y-x)=(1+(a-1)x)/((a-1)(x-x^2))
となり、visual basicを用いてsimpson則から∫dL/Lを求めるものです

∫の上の数字をX0、下の数字をX1とし、X0=0.5 X1=0.2 a=2.48のときsimpson則でN=10だと ∫dL/L=1.407 になるとあります
しかし私のプログラムだとそうなりません
どこがおかしいのか教えてください

Sub test()
N = 10
X0 = 0.5
X1 = 0.2
DX = (X1 - X0) / (2 * N)
X = X0
s = 0

For i = 1 To N
s = s + F(X) + 4 * F(X + 1) + F(X + 2)
X = X + 2 * DX
Next i

s = s * DX / 3
Debug.Print s
End Sub

Function F(X)
F = (1 + 1.48 * X) / (1.48 * (X - X ^ 2))
End Function