Uh, you got it all backwards. PA has been portable from the very beginning. I am pretty sure that this fact didn't improve the API in any way, in fact it's not really visible in the API at all. This completely destroys your FUD-filled example, doesn't it?
I think the major problem with the PA API is mostly it's fully asynchronous nature, which makes it very hard to use. I am humble enough to admit that.
If you want to figure out if your API is good, then porting won't help you. Using it yourself however will.
From your comments I figure you have never bothered with hacking on graphics or audio stacks yourself, have you?