Wouldn't it be easier to just use a motor driver (module) which is essentially an h-bridge? Saves you the trouble of dealing with components.