"it" would work in reference to a singular, definite noun:
A: I like that pillow.
B: Why don't you buy it?
"ones" only works if accompanied by some modifier:
A: These pillows are too old.
B: Why don't you buy new ones?
Only "one" (in the singular form) works alone:
A: I need a pillow.
B: Why don't you buy one?
The difference between "some" and "any" is that, with "some," an affirmative answer is expected. "any" is used in real, open questions. Notice that Why don't we buy some? is equivalent to Let's buy some (Let's buy any would be incorrect).