Backward compatibility between SATA150 and SATA300 devices was intended, therefore SATA300 controllers were designed to fall back to SATA150 speed when connected to such drives. However, in practice some older SATA controllers do not implement SATA speed negotiation properly, and you can not be a 100% sure that a SATA300 hard drive will fit your laptop with a SATA150 controller.
However, if you are about to replace the hard drive in your MacBook, which is delivered from the factory with a SATA150 hard drive, you are able to replace it with a SATA300. I myself have replaced the original hard drive in my MacBook with a Seagate Momentus 7200.3 320GB SATA 2.5 7200RPM 16MB G-Force hard drive with no problems at all.
Pingback: MacBook - Replaced Hard Drive. Problem Now... - Mac-Forums.com