If you want a reference that will not bore them, supplement the main text with "Metric Spaces: Iteration and Application" by Victor Bryant. The book is *short* and it shows in several contexts how the concept of a fixed-point property, via iteration, can be used to solve worthwhile problems.  It is very nicely written and Bryant makes a real effort to motivate the material and explain where things are going and why.