У меня была такая же проблема, и для MDCards есть свойство border_radius, но оно не работает. Но я решил это с помощью этого кода:
<MyCard>:
orientation: 'vertical'
size_hint: 0.1, 1
canvas.before:
Color:
rgba: app.theme_cls.primary_color
RoundedRectangle:
radius: [10]
size: self.size
pos: self.pos
FloatLayout:
size: self.size
pos: self.pos
pos_hint: {"x": -0.1, "y": -0.6}
А вот часть из .py файла:
class Plan(RectangularElevationBehavior, RectangularRippleBehavior, FloatLayout):
ripple_scale = 1.4
text = StringProperty()
text_label = StringProperty()
Итак, он создает MyCard (класс FloatLayout) с Canvas в это, которое наследуется от FloatLayout, RippleBehaviour и ElevationBehaviour. И затем вы можете добавить к этому FloatLayout в нем, чтобы управлять его содержимым. Но если это выглядит странно из-за позиции, попробуйте поиграть с pos_hint-s.