Why do some apps on the iPhone 3g say 'not compatible with this iPhone'?

It could simply be because your software is to old make sure you update to the latest using iTunes. The latest one today on 5-12-10 is 4.2.1.
It could be a fault with your phone.

It could be the app was not designed for 3g

I work for apple California trust me