I believe your position manager is to get you information on your account balances, positions, order status etc. How did you implement this? through FIX or broker-dependent API?
My position manager is the first source of information, it keeps track of all orders and positions, calculates balances, buying power, commissions and so forth, so ATS doesn't have to have it from an external source (or multiple sources).
Has it ever happened that your position manager does not match your real position ? What can you do to ensure they match each other?
You got executions from your broker, so you see the same filled price/size as broker gets them. Everything does match up well if you calculate commissions, rebates, and fees properly.
With IB API, sometimes messages are missing so positions could mismatch. So I guess my question really is have you encountered missing messages using FIX?
Never, and remember that IB is used by many pretty big houses via FIX lines, so it's better be robust.