a[1]=2, a[n+1]=2a[n]-3^n の一般項の求め方が分からないのでお願いします。

2^(n+1)で両辺を割って
a[n+1]/2^(n+1)=a[n]/2^n-3^n/2^(n+1)
になると思うんですが、ここでa[n]/2^nをb[n]と置き
b[n+1]=b[n]-3^n/2^(n+1)でb[1]=1/2

出たb[n]=1/2-3^n/2^(n+1)に2^nを掛けて
a[n]=1/2(2^n-3^n)だと思うのですが一致しません。

よろしくお願いします。