setBackgroundImage
establece la imagen de fondo del botón. Normalmente, utiliza esto junto con un botón del tipo "Personalizar" para utilizar la imagen de fondo como una buena forma y fondo para el botón (digamos una imagen que representa un rectángulo con esquinas redondeadas y relleno con un bonito degradado)
setImage
agrega una imagen/icono al lado del título del botón, (todos los cuales, imagen y título, se superponen sobre la imagen de fondo, por supuesto, es por eso que se llama "fondo" después de todo). Si también configura un título para su botón, la imagen se dibujará al lado del título y su posición dependerá de la longitud del título (y también de las propiedades titleContentInsets/imageContentInsets para ajustar esta posición)
Solo pruébelo Interface Builder (establecer una imagen para ambos, jugar al establecer un título, etc.) lo entenderá más fácil.
Eventualmente la imagen de fondo puede ser superpuesta por una imagen transparente ... pero esto es solo una idea. – evotopid