Oh! I see what’s going on. Try this:
self.button = DirectButton(self.mobile_frame, image="models/image.tif", relief=None)
self.button.setTransparency(1)
Without relief=None, the default behavior is to put a gray card behind your texture, of the same size as the clickable region, which might make it look like your texture doesn’t have transparency.
David