Generate dyamic 'week of' date range
Your code looks pretty good. Just a couple of details:


Instead of hardcoding DateTime.now within the method, add an optional argument. Easier to test and more versatile to use.
The month leap is not considered.


I'd write:

def week_range(date: DateTime.now, start_day: :monday)
  start_date = date.beginning_of_week(start_day)
  end_date = date.end_of_week(start_day)
  start_date_string = start_date.strftime("%B %d")
  week_end_string = (start_date.month == end_date.month) ? 
    end_date.strftime("%d") : end_date.strftime("%B %d")  
  "#{start_date_string} - #{week_end_string}"
end